2016-08-29 5 views
0

-lコマンドのsedマニュアルを読んでいます。そこには、こう述べています。GNU sedでは `l`オプションは何を意味しますか?

-l 
--line-length=N 

lコマンドのデフォルトのラインラップ長を指定します。長さ0(ゼロ)は長い行を折り返さないことを意味します。指定しない場合、それは70と見なされます。

これはどのように役立つかわかりません。誰かが私に例を与えることができますか?

私はこのようにそれを考えて、それが結果:

[[email protected] ~]# echo 'abcdefg' | sed -l 3 -n '/a/p' 
abcdefg 

答えて

2

アドレスが

範囲受け入れるコマンド... ``視覚的に明確な '' 形で、現在のラインアウト

l一覧。幅の文字でそれを壊す ``視覚的に明確な 「」の形で現在のラインアウト

lwidthリスト、 。これはGNU拡張です。

-lN(ラップ幅引数が明示的にsedスクリプトに設けられていない場合)、--line-length=Nオプションは「l」コマンドのために所望のラインラップ長さを指定することができ。

$ echo abcdefgh | sed -n 'l 5' 
abcd\ 
efgh$ 
$ echo abcdefgh | sed -n -l 5 'l' 
abcd\ 
efgh$ 
$ echo abcdefgh | sed -n -l 5 'l 3' 
ab\ 
cd\ 
ef\ 
gh$ 
3

それを試してみて、見ていないのはなぜ? sed manualから

$ echo 'abcdefg' | sed -l 3 'l' 
ab\ 
cd\ 
ef\ 
g$ 
abcdefg 

$ echo 'abcdefg' | sed -l 4 'l' 
abc\ 
def\ 
g$ 
abcdefg 
+2

+1。 OPがそれを試そうとしたようだが、ドキュメントの "lコマンドのための"というフレーズの重要性を忘れてしまった( "コマンド"と "オプション"がsedの別のものであることを認識していないため)。 – ruakh

+0

(s)彼は私の答えを投稿した後にその質問への試みを追加しました。以前は質問は「誰かが私に例を挙げることはできますか?」で終わった。 –

関連する問題