【问题标题】:Append string on grep multiple results in a single command在单个命令中将字符串附加到 grep 多个结果中
【发布时间】:2015-01-03 05:17:17
【问题描述】:

我想在 grep 结果的每一行附加一个字符串。

例如,此命令将返回几行:

ls -a | grep "filename"

例如:

filename1
filename2
filename3
filename4

如何使用单个命令在每个返回行上附加一个字符串 test?这样我就得到了这个输出:

test filename1
test filename2
test filename3
test filename4

【问题讨论】:

标签: text grep format


【解决方案1】:

你可以这样做:

ls -a | grep "filename" | perl -ne 'print "test $_"'

【讨论】:

    【解决方案2】:

    另一种方法是使用sed(特别是流编辑器):

    ls -a | grep "filename" | sed 's/^/test /'

    ls -a *filename* | sed 's/^/test /'

    甚至

    ls -a | sed '/filename/bx;d;:x;s/^/test /'

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 2014-04-08
      • 2013-08-20
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-19
      • 2018-11-27
      相关资源
      最近更新 更多