如何组合两个或多个wc命令的结果?
wc *.foo
wc *.bar
要查看行,字数和字节的总和?
这是我到目前为止所做的:
wc *.foo|grep total
wc *.bar|grep total
但是当我尝试组合命令时,我在命令提示符上出现了奇怪的行为:
{ wc *.foo & wc *.bar; }|grep total
我想将输出传递给awk来计算总和:
awk '{l+=$1; w+=$2; b+=$3} END {print "total lines: " l ", words: " w ", bytes: " b}'
答案 0 :(得分:1)
wc *.foo *.bar | awk '/total/ {print "total lines: " $1 ,"words: " $2, "bytes: " $3}'
total lines: 18 words: 23 bytes: 53
答案 1 :(得分:1)
使用;
分隔命令并将其封装在(
)
内:
( wc *.foo ; wc *.bar; ) | grep total
或者,如果您只需要wc,则可以将两个通配符传递给它(它将为您提供两种文件类型的总数):
wc *.foo *.bar | grep total