00:00
大家好。欢迎大家继续收看上硅谷的云计算课程,这节课我们继续来学习12编程,那我们这节课来学习一个重要的东西,条件判断,各位我们快能写东西了,把这玩意讲完,然后我们后边讲每个流程就可以写的东西了,要不然前面这个真的是好像看起来都是单级命令,而且还不是太好理解,对吧?原因我们现在有的知识可能还不够,那我们还要把这点讲完就够了,那我们来看看这个测试啊,这个测试啊是我们写程序中最主要的东西,程序要可以实现判断这东西到底是对还是不对,这个判断类型还是比较多的,一个一个一个挺多的,我们一个一个来讲,那么。首先我们来说一下它的第一组判断,判断文件类型。我们可以这里写了常见的,比如说这两个判断,这个文件首先得存在,其次是不是块设备文件,各位我们都说过了,是块设备文件为帧,是否是字符设备,这些都是特殊文件,很少见,对吧?常见这是目录,首先目录必须存在,其次是目录为帧,然后这个杠E是判断这个文件在不在,在就为真,那么试一下来。
01:14
我当前这里面有一堆的文件,对吧?那我们这个方法写法格式有这样两种,Test杠,1TEST测试,那么比如说IP test IP这个文件是存在的,回车没有任何提示怎么办?看它的返回值,我们讲过了,返回值为零,证明上一条为零,正确执行。返回值为非零,证明上一条命令没有正确执行,对吧,那通过这样的方式,第二种格式呢,是这种,哎。就是用中括号把它括起来,单击中括号啊,对后面加文件名就行了,比如说既然这个IP是存在的,那我们测一个不存在,那这个时候回车也没有提示A口到了呗,看非零。
02:00
只要是非零证明这条命令测试结果是错的,不为真,那我们这里写了存在为真,那结果是错的,就证明这个文件ABC当前目录下的ABC是没有了,对吧?那这是test的两种格式。两个格式都行,用哪种的?各位第一次第一次接触12编程的学员都告诉我用第一种,为啥这种格式符合命令行的格式,命令选项参数对吧,但是我们说我们程序中都是用第二个中号来调用,为啥。你看啊,我往后翻一下,我比如说我们写这个条件判断了,我们后面写if语句了,看if判断什么,比如说随便if这个值是不是大于80,那中间这个看到了吧。这个格式中括号就是test,写test反而识别不了,就得写成这个中括号,所以我们常用的格式是这个,那我们后面以后举这种条件测试,我都用这个格式,这个命令格式我就不说了啊好。
03:05
这是判断这个文件是不是存在,各位,但是每次判断完我都得还要看一下,Dollar问我才知道这个结果是正确还是错误的,不方便怎么办?记得这个吗?如果条件成立逻辑,如果第一条命令正确执行,则执行第二条命令,那我们就输出yes,否则,如果第一条命令没有正确执行,如果前面命令没有执行,则执行第二条命令。这个是讲过了吧,逻辑与和逻辑获得联合应用对吧,那这个时候就是。如果这个文件不存在,或者说这个判断条件这个为真,则输出yes,如果这个条件为假,则输出no,那我们现在这个ABC。是不存在的,所以执行完就会输出no,这样是不是就会更直观对吧,好。这个。都比较常见。哎,这种我说了是硬件设备文件嘛,管它呢,这个包括这个P管道服务文件,你见过吗?很少见是吧,就这些比较常见。
04:08
杠E判断这个文件在不在,杠F判断它在不在,同时判断它是不是普通文件,杠大L判断它在不在,并且它是不是软链接。钢G判断它是不是目录,哎,那这个时候比如说我想判断一下。ABC在啊,那我怎么办?我想判断一下这个Ip.t这个文件它是不是目录,诶那这个文件不是目录对吧?那它是不是普通文件呢?我们,哎,它是普通文件看到吗。各位,有人说好玩,你干嘛要写这么长的东西判断它是不是文件?你看我多聪明,我一眼就能判出来这是文件,我何必还要这样判断你yes or no,咱来判断它是不是文件?各位,还是这句话。你看,你能看到,那是人的思维。你是不是要让程序能判断出来它是文件还是目录,这就要用程序的格式才可以完成,大家注意这个事儿,好,这个还是比较常见的这四个。
05:09
哎,这个都很好理解,再有可以判断什么,可以判断文件是不是空,也就是说里面有没有数据。如果有数据则为正,那啥意思?杠S小写S,那我们都记得啊,我们啥我们记得这个。我们记得这个这个这个这个呃,我们的IP里边是不是那那天为了讲一下IP过滤正则,我是不是写了点数据在里面,所以杠S这里面是有数据的。对吧,那我touch一个空文件出来,Touch一个ABC空的,这个ABC是空文件对吧,那我们这个时候这里,然后我们把它。测试一下ABC,其实这种测试啊,如果真要写在程序里,你最好写绝局路径,要不然找不着。ABC,你到哪设ABC,当然用命令行无所谓啊,因为我刚好在这个路径下写脚本的时候,你记得写成绝对路径,那我测试一下这个文件里边有没有数据,有数据为真,没有数据为假,那我们回车看一下,那这里面是空的,因为我刚建的,所以是假,那我往里写点数据吧。
06:17
往abcd写点数据,再测这个里边就被针了,有数据了,看到了这个是判断里边有没有数据,诶这个也比较成。那剩下这些,这些都是特殊文件套接字文件,管道符文件,什么块设备文件,字符设备文件,这些几乎用不着,哎,常见的就是这样一些测试,诶,这节课啊,各位首先我们要做的是理解我们的test能识别成什么,能识别这两种格式。然后要理解,我们更常用的是用括号的方式来测这个测试,然后把这个表格中我们常用的这个东西要记下来。好,这是第一组这个判断,我们判断的是文件类型,那这节课就到这里,我们下节课再见。
我来说两句