多语言展示
当前在线:369今日阅读:168今日分享:49

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

很多时候我们在做运维的时候,我们需要做一些自动化,这时我们就需要写一些shell脚本,既然要用到shell脚本,就免不了文件操作。接下来我就教你怎么判断文件是否存在。
工具/原料

一台装有bash的linux

方法/步骤
1

首先我们要touch一个文件。

2

打开它,输入如下#!/bin/bashif [ -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.'     fifi

3

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

4

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

5

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

6

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

7

然后测试我们的目录?

8

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

9

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

10

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

推荐信息