前提資料 → CRON < Wiki | さくらのレンタルサーバ非公式FAQ
vim は既に自分でインストールしていました。
さくらのレンタルサーバーで cron 編集する際
vi だと何となくやりづらかったので vim を使うことにしました。
・.cshrc を編集。
これだけだと、「crontab: temp file must be edited in place」と怒られます。
ファイルのバックアップが作れないそうです。
・.vimrc に追記。
crontab 編集時に使うディレクトリでだけバックアップをとらないようにする。
参考 → Mac OS X で cron を使う(EDITOR=vim) - yuyarinの日記
vim は既に自分でインストールしていました。
さくらのレンタルサーバーで cron 編集する際
vi だと何となくやりづらかったので vim を使うことにしました。
・.cshrc を編集。
setenv EDITOR viを
setenv EDITOR vimに変更。
これだけだと、「crontab: temp file must be edited in place」と怒られます。
ファイルのバックアップが作れないそうです。
・.vimrc に追記。
crontab 編集時に使うディレクトリでだけバックアップをとらないようにする。
set backupskip=/var/tmp/*
参考 → Mac OS X で cron を使う(EDITOR=vim) - yuyarinの日記
Twitter APIの改訂 - 2012年5月14日 - Twitter Development Talk - ja | Google グループ
自分の Twitter の発言を毎日取得して DB に保存しています。
残っている最初の発言が2008年なので
その頃に保存用のスクリプトを書いたのだと思います。
そんな年代物のスクリプトにとうとう残念なお知らせが来てしまいました。
既存スクリプトの問題点
・page パラメータを使っている → 動かなくなる!
・バージョン抜き、サブドメイン抜きのAPIエンドポイントを使っている
・OAuth の認証なしで API 叩いているので
同時刻に別の人が同じサーバで API 叩きまくると API 制限にひっかかる可能性がある
・なんかもう昔書いたスクリプト読みたくない
昔のことはきれいに忘れて、スクリプトを書き直しました。
・OAuth の認証通るようにする
PHP用のライブラリ → abraham/twitteroauth · GitHub
適当にアプリケーションの登録をしておく → Create an application | Twitter Developers
うっかり変な使い方で Suspended になったことがあるので、
個人用でも用途別に登録した方が良さそう。
・バージョン抜き、サブドメイン抜きのAPIエンドポイントを使うのやめる
ライブラリ使うようにしたのでこれもクリア。
・page パラメータやめる
ドキュメント読む → GET statuses/user_timeline | Twitter Developers
since_id と max_id を使うようにする。
きっとこれで 5/14 以降も動くようになりました。めでたし。
5. since_idやmax_idをサポートするエンドポイントはpageパラメータによるページングを廃止
自分の Twitter の発言を毎日取得して DB に保存しています。
残っている最初の発言が2008年なので
その頃に保存用のスクリプトを書いたのだと思います。
そんな年代物のスクリプトにとうとう残念なお知らせが来てしまいました。
既存スクリプトの問題点
・page パラメータを使っている → 動かなくなる!
・バージョン抜き、サブドメイン抜きのAPIエンドポイントを使っている
・OAuth の認証なしで API 叩いているので
同時刻に別の人が同じサーバで API 叩きまくると API 制限にひっかかる可能性がある
・なんかもう昔書いたスクリプト読みたくない
昔のことはきれいに忘れて、スクリプトを書き直しました。
・OAuth の認証通るようにする
PHP用のライブラリ → abraham/twitteroauth · GitHub
適当にアプリケーションの登録をしておく → Create an application | Twitter Developers
うっかり変な使い方で Suspended になったことがあるので、
個人用でも用途別に登録した方が良さそう。
・バージョン抜き、サブドメイン抜きのAPIエンドポイントを使うのやめる
ライブラリ使うようにしたのでこれもクリア。
・page パラメータやめる
ドキュメント読む → GET statuses/user_timeline | Twitter Developers
since_id と max_id を使うようにする。
きっとこれで 5/14 以降も動くようになりました。めでたし。
メールを表示した際に差出人や件名、返信ボタンと共に出てくる
アーカイブ、迷惑メールにマーク、削除のボタンについて
ほとんど使わないのに横幅とってたので、ラベル部分を消してみました。
userChrome.css に下記を追記。
参考・自作自演 : Thunderbird 3.1 で userChrome.css を使う。
アーカイブ、迷惑メールにマーク、削除のボタンについて
ほとんど使わないのに横幅とってたので、ラベル部分を消してみました。
userChrome.css に下記を追記。
#hdrArchiveButton > label, #hdrJunkButton > label, #hdrTrashButton > label {
display:none;
}参考・自作自演 : Thunderbird 3.1 で userChrome.css を使う。
Tags:#Thunderbird
1行1単語のファイルから、単語の数を集計しようとしました。
ところが。
uniq -c の結果がおかしい!
grep すると 1つしか見つからないのに、
uniq -c だと、その単語が 713 もあるって出てくる!なんなの!
よく見たらそもそも sort も並び順おかしい!同じ単語がばらばらの場所にある!
…とか思ったのですが、LC_ALL=C をつけたらうまくいきました。
問題になった環境では試せていませんが、LC_COLLATE=C で充分かもしれないです。
ロケールの確認は locale コマンドで。
■参考
Ubuntu日本語フォーラム / utf-8に対応したソートコマンドってありますか。
LC_ALL環境変数とsortコマンド - sileの日記
追記: sort を使うときは,LC_ALL=C を忘れずに - ny23の日記
1 Entry per Day: What's "LANG=C" ?Standard Locales - The GNU C Library
Linux Hacks:環境変数によるロケールの管理 (1/2) - ITmedia エンタープライズ
ところが。
uniq -c の結果がおかしい!
grep すると 1つしか見つからないのに、
uniq -c だと、その単語が 713 もあるって出てくる!なんなの!
よく見たらそもそも sort も並び順おかしい!同じ単語がばらばらの場所にある!
…とか思ったのですが、LC_ALL=C をつけたらうまくいきました。
問題になった環境では試せていませんが、LC_COLLATE=C で充分かもしれないです。
LC_ALL=C sort text.txt | LC_ALL=C uniq -c > result.txt
ロケールの確認は locale コマンドで。
■参考
Ubuntu日本語フォーラム / utf-8に対応したソートコマンドってありますか。
LC_ALL環境変数とsortコマンド - sileの日記
追記: sort を使うときは,LC_ALL=C を忘れずに - ny23の日記
1 Entry per Day: What's "LANG=C" ?Standard Locales - The GNU C Library
Linux Hacks:環境変数によるロケールの管理 (1/2) - ITmedia エンタープライズ
PHP は 5.3.6 でした。
■MySQL 入れる。
レンタルサーバーの MySQL のバージョンが 5.1 なので、5.1 を入れました。
http://dev.mysql.com/downloads/mysql/5.1.html
10.7用はなかったので、Mac OS X ver. 10.6 (x86, 64-bit), DMG Archive 使いました。
1. mysql-5.1.60-osx10.6-x86_64.pkg
2. MySQLStartupItem.pkg
3. MySQL.prefPane
の順でインストールしました。
ReadMe.txt に書いてありますが、
勝手にパス通して(?)くれたりしないみたいなので
必要なら自分で alias の設定をします。
システム環境設定の MySQL の項から開始・停止ができます。
■PDO で MySQL に接続
(参考・PHP + MySQL on Leopard (Mac OS X 10.5) :: R-STYLES.NET)
mysql:host=localhost;dbname=test で接続しようとしたらエラーになりました。
SQLSTATE[HY000] [2002] No such file or directory
PHP と MySQL でデフォルトの mysql.sock の場所が食い違って接続できない、
ということで、自分は php.ini の方を書き換えました。
(参考にした記事には my.cnf 書き換えた方が良いのでは…とあって、
後からやっぱりそっちの方が良いのかなーとも思ってます…)
mysql.default_socket = /tmp/mysql.sock
pdo_mysql.default_socket=/tmp/mysql.sock
を追加しました。
■文字コードの設定
PHP, PDOでMySQL接続時の文字コード設定 | beginsprite log
■MySQL 入れる。
レンタルサーバーの MySQL のバージョンが 5.1 なので、5.1 を入れました。
http://dev.mysql.com/downloads/mysql/5.1.html
10.7用はなかったので、Mac OS X ver. 10.6 (x86, 64-bit), DMG Archive 使いました。
1. mysql-5.1.60-osx10.6-x86_64.pkg
2. MySQLStartupItem.pkg
3. MySQL.prefPane
の順でインストールしました。
ReadMe.txt に書いてありますが、
勝手にパス通して(?)くれたりしないみたいなので
必要なら自分で alias の設定をします。
システム環境設定の MySQL の項から開始・停止ができます。
■PDO で MySQL に接続
(参考・PHP + MySQL on Leopard (Mac OS X 10.5) :: R-STYLES.NET)
mysql:host=localhost;dbname=test で接続しようとしたらエラーになりました。
SQLSTATE[HY000] [2002] No such file or directory
PHP と MySQL でデフォルトの mysql.sock の場所が食い違って接続できない、
ということで、自分は php.ini の方を書き換えました。
(参考にした記事には my.cnf 書き換えた方が良いのでは…とあって、
後からやっぱりそっちの方が良いのかなーとも思ってます…)
mysql.default_socket = /tmp/mysql.sock
pdo_mysql.default_socket=/tmp/mysql.sock
を追加しました。
■文字コードの設定
PHP, PDOでMySQL接続時の文字コード設定 | beginsprite log
$pdo = new PDO($db_dsn,$db_user, $db_password,
array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET `utf8`"
)
);
