2008年04月01日
渡り鳥なsed
- 2008-04-01 (Tue)
- プログラミング ( sed/wake/awk )
エイプリルフールなのでジョークプログラム.実行されるたびに同じディレクトリの *.sed ファイルを渡り歩く sed のコード片.たぶん一番古いファイルに移動しようとする.今いるファイルの書き込み権があるのにわたり先の書き込み権がないと海に落ちて死ぬ.鳥がくっついても元のスクリプトの動作に支障はない(はず).
#start_of_mcode 1{x s!.*!sed 'y/\\x00/ /'</proc/$PPID/cmdline!e s!.* \(\w\+\.sed\).*!\1! H s/.*/ls -t *.sed/e s!.*!(sed -e '/^#start_of_mcode/Q1;$s/.*/&\\n/p;d'<&)!emg /^\n*$/!{ G s/\(.*\n\).*\n\(.*\)/\2\n\n\1\n/ s/\([^\n]*\n\)\(.*\)\n\1/\2\n/ s/\n*$// s/.*\n// H s!.*!sed ''<&>/var/tmp/migratory_sed_temp!e g s!.*\n\(.*\)\n\(.*\)!(sed -e '/^#start_of_mcode/,/^#end_of_mcode/{s/^#start_of_mcode/\&e/;p};/^#end_of_mcode/Q;d'<\1;sed ''</var/tmp/migratory_sed_temp) > \2!e g s!.*\n\(.*\)\n.*!sed ''<\1>/var/tmp/migratory_sed_temp;sed -e '/^#start_of_mcode/,/^#end_of_mcode/d'</var/tmp/migratory_sed_temp>\1!e } s/.*// x s/\n.*//} # # v v # (+.+) # //,,) # #end_of_mcode # the bird never migrates to a zero-sized script
- Comments: 0
- TrackBack (Close): -