`l`选项在GNU sed中意味着什么?

时间:2016-08-29 03:21:42

标签: bash sed

我已阅读DB:select('USE dbName; SHOW TABLES'); DB::select('SELECT dbName(); SHOW TABLES'); 命令的sed手册。它说:

-l
     

指定-l --line-length=N 命令的默认换行长度。长度为0(零)意味着永远不会包裹长行。如果没有指定,则为70.

我不知道这有用。有人可以举个例子吗?

我认为这样,但结果是:

l

2 个答案:

答案 0 :(得分:3)

为什么不尝试看看?

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

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

答案 1 :(得分:2)

来自sed manual

  

接受地址范围的命令

     

...

     

l在“视觉上毫不含糊的”'中列出当前行。   形式。

     

l width 在``视觉上列出当前行   不含糊''形成,                 在宽度字符处打破它。这是一个GNU扩展。

-l N --line-length= N 选项允许指定所需的行 - ' l'的换行长度命令(当sed脚本中未明确提供wrap-width参数时)。

$ 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$