首页  >  文章  >  运维  >  linux shell怎么判断文件是否存在

linux shell怎么判断文件是否存在

青灯夜游
青灯夜游原创
2021-11-30 16:01:4238858浏览

在linux shell中,可以利用if语句和“-e filename”表达式来判断文件是否存在,具体语法“if [-e filename]; then echo "文件存在"; else echo "文件不存在"; fi”。

linux shell怎么判断文件是否存在

本教程操作环境:linux5.9.8系统、Dell G3电脑。

判断文件的基本格式。[ 操作符 文件或目录 ]

linux shell怎么判断文件是否存在

  • -e filename 如果 filename存在,则为真

  • -d filename 如果 filename为目录,则为真

  • -f filename 如果 filename为常规文件,则为真

  • -L filename 如果 filename为符号链接,则为真

  • -r filename 如果 filename可读,则为真

  • -w filename 如果 filename可写,则为真

  • -x filename 如果 filename可执行,则为真

  • -s filename 如果文件长度不为0,则为真

  • -h filename 如果文件是软链接,则为真

常用例子

如果存在某文件,则删除

if [ -f trials ]; then rm ${result_path}trials; fi

如果没有文件夹,则创建

if [ ! -d $result_name ];then
   mkdir -p $result_name
fi

shell命令判断文件或文件夹是否存在,先直接看实例:

#!/bin/sh
 
#判断文件存在,判断是否为文件夹等
testPath="/Volumes/MacBookProHD/Mr.Wen/08 shell命令"
testFile="/Volumes/MacBookProHD/Mr.Wen/08 shell命令/fileWen"
 
#判断文件夹是否存在 -d
if [[ ! -d "$testPath" ]]; then
 echo "文件夹不存在"
else
 echo "文件夹存在"
fi
 
#判断文件夹是否存在,并且具有可执行权限
if [[ ! -x "$testFile" ]]; then
 echo "文件不存在并且没有可执行权限"
else
 echo "文件存在并有可执行权限"
fi
 
#判断文件是否存在
if [-e "$testFile"]; then
 echo "文件不存在"
else
 echo "文件存在"
fi

相关推荐:《Linux视频教程

以上是linux shell怎么判断文件是否存在的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn