我想创建一个脚本,获取扩展和报告在两列,用户和用户拥有该扩展的文件数量。 结果必须打印在report.txt中与剪切和grep报告
这是我的代码。
#!/bin/bash
#Uncoment to create /tmp/test/ with 50 txt files
#mkdir /tmp/test/
#touch /tmp/test/arch{01..50}.txt
clear
usage(){
echo "The script needs an extension to search"
echo "$0 <extension>"
}
if [ $# -eq 0 ]; then
usage
exit 1
fi
folder="/tmp/test/"
touch report.txt
count=0
pushd $folder
for file in $(ls -l); do
grep "*.$1" | cut -d " " -f3 >> report.txt
done
popd
该程序运行不休。而且我甚至没有为每个用户计算文件。 我怎样才能解决这个只使用grep和切?
你能给输入和预期的输出? – Fazlin
'grep“*。$ 1”| ......'greps ins stdin。你的程序永远在等待着。我没有文件参数或缺少输入管道。 –
你可以用'find $ folder -name'*。$ 1“-printf”%P \ t%u \ n“>> report.txt'来代替for循环,然后用一些wc。 –