0

安っぽいタイトル、はい。しかし、私は正直なところ、この特定のコード行が何をするのかわかりません。ただし、perlスクリプトに何らかの引数が渡される可能性があるという事実は別としてです。行は次のとおりです。

dbget.pl "params::INSTANCES_*" | /bin/sed -e 's/^setenv \(.*\) '"'"'\(.*\)'"'"'; /\1 = \2/ ' > .gen_inst_cache.$$

ここでたくさんの正規表現が行われていると思いますか?そもそもそれがとても読めないように見えるのは、おそらくそれが理由です。

助けてくれてありがとう。

4

1 に答える 1

1

パラメータとして "params::INSTANCES_*" を指定して呼び出される dbget.pl というスクリプトは、標準出力に何らかの出力を生成します。このストリームは、stdin でストリーム エディターである sed に送られます。

Sed は、次で始まる行を置き換えます。

setenv (something) '(somethingelse)';[space]

の中へ:

(something) = (somethingelse)[space]

置換された出力は、.gen_inst_cache.$$ というファイルに送信されます。ここで、$$ は呼び出しシェル プロセスの pid 番号です。

于 2012-06-19T21:41:47.663 に答える