主题:shell 判断某扩展名文件是否存在

来源:互联网 发布:淘宝装修模板复制 编辑:程序博客网 时间:2024/06/06 06:39

(转载)http://www.iteye.com/topic/516602

因为需求需要处理大量log文件,考虑到awk的高效,但处理前需要判断文件是否存在,因.log文件有多个,所以用if判断。

 

if [ -e *.log ]; then

 

此时如果文件不存在,则不报错误。但如果有多个.log文件存在,则报错

 

if[  too many arguments 事实上因为-e 或者 -f 都只能接受一个参数,用了通配符后会有多个文件存在的可能就导致多个参数出现的可能,所以报错。

 

经过多次测试也找了些资料,发现以下解决方法:

 

files=$(ls *.log 2> /dev/null | wc -l)

if [ "$files" != "0" ] ;

then

 

即可达到目的。


原创粉丝点击