Comment detail

コマンドライン引数の取得 (Nested Flatten)
最初の直感でsedでは絶対無理だと思ったのですが、卑怯な技を思いついたので書いて見ました。
GNU拡張とシェル、procファイルシステムの力で無理やり実現しています(互換性の保証無し)。
自己参照するので、ファイル名を固定する必要があります。
このソースではカレントディレクトリにshowargs.sedという名前で保存して
./showargs.sed a b c d
などと実行します。
カレントディレクトリ以外から実行できるようにするためには--file=の部分を絶対パスに直してください。
1
2
3
4
5
6
7
#!/bin/sed --file=showargs.sed

s%^.*$%sed -e 's/[[:cntrl:]]/ /g' /proc/$PPID/cmdline%
e
s/^.*sed --file=showargs\.sed .*showargs\.sed *//
s/ *$//
q

Index

Feed

Other

Link

Pathtraq

loading...