教你怎么使用shell判断文件是否存在

作者:追风筝的人 | 创建时间: 2023-04-08
很多时候我们在做运维的时候,我们需要做一些自动化,这时我们就需要写一些shell脚本,既然要用到shell脚本,就免不了文件操作。接下来我就教你怎么判断文件是否存在。...
教你怎么使用shell判断文件是否存在

操作方法

首先我们要touch一个文件。

打开它,输入如下 #!/bin/bash if [ -z $1 ]; then      #如果没有输入参数,也就是第一个参数的字符串长度为0 :                          #空语句 else if [ -e $1 ]; then       #如果文件存在的话 if [ -f $1 ]; then   #如果文件是个普通文件? echo $1" is a text file." elif [ -d $1 ]; then #如果文件是个目录文件? echo $1" is a directory." elif [ -c $1 ]; then #如果文件是个字符设备? echo $1" is a char device." elif [ -b $1 ]; then #如果文件是个块设备? echo $1" is a block device." else #否则 echo $1" is unknow file." fi fi

wq保存起来,然后测试它。

第一步肯定是要测试参数的问题,如果没参数会怎么样?

参数没问题,我们再随便输入一个不存在的文件试试?

这完全符合unix哲学,一个程序就该简易,不说更多的废话。很显然,提醒文件不存在是没有必要的,并且缺少参数也是不需要的,我们只要结果,对于unix哲学来说,是这样的。 接下来我们要测试我们的重点,我们的文件。首先从普通文件开始测试,那就测试自己吧。

然后测试我们的目录?

测试我们的字符设备?但是我们不知道机子上有哪些字符设备怎么办? 那很简单,我们只要ls -l /dev | more 看一下就行,按enter键往下移。 只需要看前面的第一个字符是什么就OK c代表字符设备,b代表块设备 那我们等会就测试/dev/adsp的字符设备和/dev/hdc的块设备

看到了,我们先测试字符设备。 按q退出more 来看看结果

然后再看看我们的块设备?

点击展开全文

更多推荐