Exim4でメールアドレスを量産する

EメールアドレスをGMailのようにサフィックスを付けても通るようにしたかったのでちょっとやってみました。 GMailのように '+' を使うルールだとこれを弾くサービスが増えてきたので、エイリアスの区切りには怪しくないように '.' を使うことにします。例え…

シェルスクリプトで乱数を扱う

シェル組込変数 RANDOM bashやzshなど一部のシェルでは特殊な変数 RANDOM があり、参照する毎に範囲の小さい整数を得ることが出来ます。 $ echo $RANDOM 30940 $ echo $((RANDOM % 100)) 22 jot(1) jot(1)は連番や乱数を出力するプログラムです。出力回数や…

Linuxでデスクトップをライブ配信する

Ustreamやニコニコ生放送でLinuxのデスクトップを配信するのに必要な物・方法のメモです。必要な物を用意する手順はDebian Lennyでの環境を元に書いてありますので、適宜読み替えて下さい。 必要な物 ffmpeg mjpegtools_yuv_to_v4l vloopbackカーネルモジュ…

xargs で -0 を使わずに find の出力を渡す

POSIXの xargs には -0 オプションがないので find で得たファイル名に空白などがあった場合に面倒が生じます。そのため、find の出力を加工します。註: あまり試してない $ find .//. -print \ |sed -n ':loop;s/./\\&/g;${p;q};x;n;/\/\//!{x;s/.*/&\\/;x}…

シェルスクリプトでエポック秒から日時を得る

$ date -d "$((`date +%s` - 1234567890)) seconds ago" ただし、ここでの date は GNU core utilities 由来の物です。

xargs で空白・改行・クオーテーションが入った引数を安全に渡す

xargs で空白が入った引数を渡す場合、「'」か「"」で引数を囲む必要があります。しかし、これらでくくった場合のエスケープシーケンスが全く提供されていないため、引数にさらに同じクオーテーションが含まれていた場合に問題があります。また、改行を入れ…

シェルスクリプトでエポック秒を得る

POSIXのシェルユーティリティにはエポック秒を直接出力するコマンドがないので生成する方法を考えます perlを使う POSIX非標準。perlぐらいどの*nixにもインストールされているしこれが普通。 $ perl -e 'print time, "\n"' date(1)でフォーマット指定を使う…