【发布时间】:2018-04-07 09:45:44
【问题描述】:
我遇到了一个我试图解决的问题,但如果不从一开始就做完整个事情,我就想不出办法。我的脚本获取扩展名并递归搜索每个 .extension 文件,然后输出“filename:row #:word #”。我也想打印出在这些文件中找到的行#-s 的总数。有没有办法使用现有的代码来做到这一点?
for i in find . -name '*.$1'|awk -F/ '{print $NF}'
do
echo "$i:`wc -l <$i|bc`:`wc -w <$i|bc`">>temp.txt
done
sort -r -t : -k3 temp.txt
cat temp.txt
【问题讨论】:
-
单引号内的字符串不会被插值。您确定要搜索扩展名为
.$1的文件吗? -
我已经使用两个简单的变量成功地解决了这个问题。作为一个初学者,我还不能让代码正常运行,但稍后我会要求进行一些更正。无论如何,如果有人好奇,我会在下面发布代码:
-
ossz=0 maxi=0 mini=100000000 for i in
find . -name '*.$1'|awk -F/ '{print $NF}'do echo "$i:wc -l <$i|bc:wc -w <$i|bc">>temp.txt if ((wc -w <$i> maxi )) maxi=wc -w <$iif ((wc -w<$iwc -w <$i ossz=ossz+wc -l <$isort -r -t : -k3 temp.txt cat temp.txt echo "$maxi:$mini " 回声 $ossz