sed
追加オプション
サーチ…
構文
- -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 sed
はl
コマンドで印刷するときに長い行を分割する長さを指定する-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