我如何用他们之前的增量数字显示我的grep命令的结果,
我不是在谈论使用-n或-nr来显示我的字符串在那些文件中的位置。
我在谈论这样的事情:
grep foo *.*
结果应该是这样的:
1 -file12.txt:.... foo .....
2 -file52.txt:.... FOO .....
3 -file87.txt:.... FOO ...
。
由于
答案 0 :(得分:4)
通过nl
,专用的"数字行"运行它工具:
grep foo * | nl
这显然适用于所有命令,而不仅仅是grep
。
答案 1 :(得分:0)
这个awk可以用单个命令处理它:
awk '/foo/{printf "%d-%s:\t%s\n", (++i), FILENAME, $0}' *.*
答案 2 :(得分:0)
它可能会过度,但你至少可以尝试一下:
n=0
for item in $(grep foo *)
do
n=$((n+1))
echo "$n-$item"
done
在一行中:
n=0;for item in $(grep foo *); do n=$((n+1)); echo "$n-$item"; done