サーチ…


構文

  • -a - (BSD sed)処理前に書き込まれたすべてのファイルの作成/切り詰め
  • -E | -r - 拡張正規表現を使用する
  • -i | -I - インプレース編集のトピックを参照してください。
  • -l - (BSD sed)ラインバッファ出力を使用する
  • -l length - (GNU sed) lコマンドラインラップの長さを指定する
  • -s - (GNU sed)ファイルを別々のストリームとして扱う
  • -u - 出力をバッファしません。
  • -z - (GNU sed)NUL文字を使ってレコードを区切ります
  • --quiet | --silent - (GNU sed) -n類義語
  • --expression = command - (GNU sed) -e同義語
  • --file = command_file - (GNU sed) -f同義語
  • --follow-symlinks - (GNU sed)シンボリックリンクに従う
  • --in-place [= extension] - (GNU sed) -i同義語
  • --line-length = length - (GNU sed) -l同義語
  • --separate - (GNU sed) -s同義語
  • --unbuffered - (GNU sed) -u同義語
  • --null-data - (GNU sed) -z同義語
  • --help - (GNU sed)印刷の使用法
  • --version - (GNU sed)印刷版

備考

-Eオプションは、次のメジャーバージョンで標準化される予定です。 関連する問題を参照してください。

遅延の作成/ファイルの切り捨て

wコマンドで書き込まれたファイルは、コマンドが実行される前に作成/切り捨てられます。

$ sed 'w created-file' < /dev/null && ls created-file && rm created-file
created-file

標準から:

各wfileは、処理が始まる前に作成されます。実装はスクリプト内で少なくとも10個のwfile引数をサポートしなければならない。実装でサポートされている実際の数(10以上)は指定されていません。 wfileパラメータを使用すると、そのファイルが最初に作成されます(存在しない場合)。または既存のファイルの内容を置き換えます。


BSD sedは、 wコマンドで書かれるまでファイルの作成/切り詰めを遅らせる-aオプションを提供します。

$ if sed -a 'w created-file' < /dev/null && [ ! -e created-file ]; then
>       echo The file was not created
> fi
The file was not created

'l'ラインラッピング

lコマンドを使用するときの行折り返しの長さは、実装定義です。

標準から:

長い線は折り畳まれ、aの後にaが書かれて示される折りたたみの点がある。折り畳みが起こる長さは不特定であるが、出力装置に適しているはずである。


GNU sedlコマンドで印刷するときに長い行を分割する長さを指定する-lオプションを提供します。デフォルトは70文字です。

$ yes | head -c100 | tr '\n' ' ' | sed -n l | head -n1 | wc -c
      71
$ yes | head -c100 | tr '\n' ' ' | sed -nl50 l | head -n1 | wc -c
      51

BSD sedは、環境変数COLUMNSによって与えられた数で長い行を分割します。もしCOLUMNSが与えられていなければ、それは端末の幅で分割され、 COULMNSが与えられず出力が端末でない場合、デフォルトは60文字になります。

$ yes | head -c100 | tr '\n' ' ' | sed -n l | head -n1 | wc -c
      61
$ yes | head -c100 | tr '\n' ' ' | COLUMNS=50 sed -n l | head -n1 | wc -c
      51
$ yes | head -c100 | tr '\n' ' ' | sed -n l | head -n1
y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y y\
 y y y y y y y y y y $


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow