所以我有这个代码:
find cobacoba -type f | xargs -n 5 bash -c 'a=(${0} ${1} ${2} ${3} ${4}); echo "File #: ${a[*]}";'
希望结果:
File #: cobacoba/1.3 cobacoba/1.6 cobacoba/1.q cobacoba/1.5
File #: cobacoba/1.1 cobacoba/1.q2 cobacoba/1.q23 cobacoba/1.4
File #: cobacoba/1.2
我想用计数器替换 #,例如 1、2、3 等等...
您可以使用以下命令对输出进行后处理awk
取代#
与行号:
find cobacoba -type f |
xargs -n 5 bash -c 'a=(${0} ${1} ${2} ${3} ${4}); echo "File #: ${a[*]}";' |
awk '{gsub("#", NR, $0); print}'
我的这个方法的来源:sed 用行号替换模式 https://stackoverflow.com/questions/12496717/sed-replace-pattern-with-line-number
PS:有人可能会说我应该将问题标记为重复问题而不是回答,但我认为即使解决方案相同,上下文也足以保证答案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)