编写一个shell脚本,根据键盘可以循环输入文件名,输入不存在的文件或是目录名则提示重新输入,按'Q或q'键退出。程序完成找出输入文件中所有含有‘YiBin’的行,按'文件名,含YiBin的行'写入当前目录下文件的notfile中。
#!/bin/bash
#查找文件里面的YiBin
while
echo "请输入文件名(按q或Q退出):"
read myfile
do
case $myfile in
[qQ]) exit;;
esac
if [ ! -f "$myfile" ]; then
echo "file don't exits"
else
FIND_STR="YiBin"
if [ `grep -c "$FIND_STR" $myfile` -ne '0' ];
then
echo "The file have YiBin!"
awk -v var=$myfile -v OFS="," '/YiBin/{print var,NR}' $myfile >> notefile
else
echo "file don't have YiBin"
fi
fi
done
代码测试: