Linux中判断文件和目录是否存在的shell命令总结
本文主要介绍了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如果文件长度不为0则为真- -h filename 判断对象是否存在并且为软链接如果文件是软链接则为真- -o 判断对象是否存在并且属于当前用户- -G 判断对象是否存在并且属于当前用户组- -nt 判断file1是否比file2新 [ /data/test1.txt -nt /data/test2.txt ]- -ot 判断file1是否比file2旧 [ /data/test1.txt -ot /data/test2.txt ]常用例子如果存在某文件则删除123if[ -f $filename ];thenrm${result_path}${filename};fi如果没有文件夹则创建123if[ ! -d $result_name ];thenmkdir-p $result_namefishell命令判断文件或文件夹是否存在123456789101112131415161718192021222324#!/bin/sh#判断文件存在判断是否为文件夹等testPath/Volumes/MacBookProHD/Mr.Wen/testFile/Volumes/MacBookProHD/Mr.Wen/fileWen#判断文件夹是否存在 -dif[[ ! -d$testPath]];thenecho文件夹不存在elseecho文件夹存在fi#判断文件夹是否存在并且具有可执行权限if[[ ! -x$testFile]];thenecho文件不存在并且没有可执行权限elseecho文件存在并有可执行权限fi#判断文件是否存在if[[ ! -f$testFile]];thenecho文件不存在elseecho文件存在fi文件夹不存在则创建12345if[ ! -d/data];thenmkdir-p/dataelseecho文件夹已存在fi文件存在则删除12345if[ ! -f/data/test.txt];thenecho文件不存在elserm-f/data/test.txtfi判断文件夹是否存在12345if[ -d/data];thenecho文件夹存在elseecho文件夹不存在fi判断文件是否存在12345if[ -f/data/test.txt];thenecho文件存在elseecho文件不存在fi方法补充1.判断目录是否存在12345678910#!/bin/bashDIR/usr/passwd# 判断目录是否存在!代表反义-d代表判断目录存在if[! -d $DIR ];then# 创建目录mkdir-p $DIR# 打印消息echoPath Not Exist,Creat in $DIRfi2.判断文件是否存在123456789#!/bin/bashFile/root/test.txtif[ ! -f $File ];thenifconfig $Fileelsecat$Filefi到此这篇关于Linux中判断文件和目录是否存在的shell命令总结的文章就介绍到这了