「自作Pythonモジュールを使うスクリプトの性能を突き詰めていたと
思ったら いつのまにかPerlを使っていた」
な… 何を言っているのか わからねーと思うが
恐ろしいものの片鱗を 味わったぜ…
#!/usr/bin/perl -e$_=$ARGV[0];$ENV{'LD_PRELOAD'}=s|[^/]+$|hogehoge.so|r;exec('python',@ARGV)
import sys
import os
print sys.argv
print os.environ['LD_PRELOAD']
LD_PRELOADで、同じ場所にあるhogehoge.soをpython起動時に直接ぽく読み込みたかった(Cythonからpxdの設定だけで直で呼びたい関数があった)わけです。
shebangは、引数1個までで128バイト以下じゃないといけないのか。初めて知りました^^;。(Linuxだけか?) awkだと引数を再連結して全部拾い直すと128バイトに収まらない…無念。(引数なしなら可能)
#!/usr/bin/awk BEGIN{a=ARGV[1];sub(/[^/]+$/,"hogehoge.so",a);system("LD_PRELOAD="a"\tpython\t"ARGV[1])}
ワンライナー系の課題はPerlが強くてコンパクトなのですね…
私の技量の問題なのかな…
0 件のコメント:
コメントを投稿