站长资讯网
最全最丰富的资讯网站

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

在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

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号