私が読んでいるhttps://stackoverflow.com/a/10010364/156458、-e
sedオプションに関する質問があります。
私が正しい場合は、-e
インラインsedコマンドの前に使用されます。ただし、.sedなしでインラインsedコマンドを指定できます-e
。たとえば、次の2つが私と同じように機能します。
$ echo foo | sed 's/foo/bar/g'
bar
$ echo foo | sed -e 's/foo/bar/g'
bar
-f
sedスクリプトを指定する必要はありません。いつそれが必要ですか-e
?最初に提供されたリンクの特定の場合になぜ必要なのですか-e
?
ありがとうございます。
ベストアンサー1
man sed
これは sed() のマニュアルページに返信されています。
-e script
、--expression=script
実行するコマンドにスクリプトを追加します。
そして
no
-e
、--expression
[...]オプションが指定されている場合、オプションではなく最初の引数がsed
解釈されるスクリプトとして使用されます。残りのすべての引数は入力ファイルの名前です。入力ファイルが指定されていない場合は、標準入力を読み込みます。
したがって、パラメータが1つしかない場合はスクリプトsed
として処理されます。sed
複数のパラメータがある場合、または-e
を使用して、どのパラメータがスクリプトであるかを確認--expression
する必要があります。sed
特定の例では、2つの選択肢は同義語です。