linux shell 学习(三)——判断文件和文件夹

时间:2022-04-20 21:39:44

linux shell 学习(三)——判断文件和文件夹

下面是判断文件和文件夹的相关例子: 主要有如下几个方法: -d 文件夹是否存在 -e 文件夹或文件是否存在 -f 文件是否存在 -s 文件是否存在且非空 -r 文件是否可读 -w 文件是否可写 -x 文件是否可执行 -O 文件是否存在,且归当前用户所有 -G 文件是否存在,且文件所属组合当前用户所属组相同 file1 -nt file2  文件1是否创建时间比文件2晚 file1 -ot file2 文件1是否比文件2创建时间早
下面是一个简单的例子:
#!/bin/bash
if [ -d $HOME ]
then
echo 'home is exist'
cd $HOME
ls -a
else
echo 'home is not exist'
fi

if [ -e ~/xyshell ]
then
echo '/xyshell exist'
cd ~/xyshell
if [ -d ./testing ]
then
echo 'there is a testing dir'
else
mkdir testing
fi
cd testing/
if [ -f ./now.txt ]
then
echo 'add new date'
date >> now.txt
else
echo 'add new file and add new date'
date > now.txt
fi
fi

if [ -d ~/xyshell/testing ] && [ -f ~/xyshell/testing/now.txt ]
then
echo 'dictionary exists and file exists'
else
echo 'dictionary or file does not exists'
fi

if [ -d ~/xyshell/testing ] || [ -f ~/xyshell/testing/now.txt ]
then
echo 'dictionary or file exists'
else
echo 'dictionary and file do not exist'
fi

运行效果:
linux shell 学习(三)——判断文件和文件夹