首页 > 系统服务 > 详细

linux5月30课笔记

时间:2018-06-05 21:04:39      阅读:172      评论:0      收藏:0      [点我收藏+]
5月30日课笔记
20.5 shell脚本中的逻辑判断
20.6 文件目录属性判断
20.7 if特殊用法
20.8/20.9 case判断

20.5 shell脚本中的逻辑判断

技术分享图片

在工作中,不用写脚本,可以写一条命
可以不用写shell脚本,可以用一条命令代替。
技术分享图片

也可以这样写,效果一样
技术分享图片

写多条命令
技术分享图片

写一个脚本
技术分享图片

把命令放到脚本里,格式化一下。
技术分享图片

技术分享图片

技术分享图片

20.6 文件目录属性判断
技术分享图片
技术分享图片

判断是不是一个文件
技术分享图片

技术分享图片

技术分享图片

技术分享图片

判断文件是不是目录
技术分享图片

技术分享图片
判断文件是不是目录或文件?
技术分享图片

技术分享图片

技术分享图片

判断文件是否可读
技术分享图片

技术分享图片

判断文件是否可写,
技术分享图片

技术分享图片
判断的是当前用户的权限。

判断是否可以执行
技术分享图片

因为不可执行,所以没有任何输出,也没有定义else
技术分享图片
以上是文件和目录常用的方法。

以下用的比较多的写法

第3行等于第3行下面4行,&&的意思是当前面的命令执行成功后,才会执行后面的命令。如果不想写4行,可以直接用上面的命令。
技术分享图片

||的意思,前面的命令执行不成功过,才执行后面的命令。
技术分享图片

判断文件如果文件不存在
技术分享图片

20.7 if特殊用法

技术分享图片

n=wc -l /tmp/lalal 是列出/tmp/lalal的行数,如果/tmp/lalal不小心被删了,的值是空,就会出现问题。

技术分享图片

如果脚本出现问题,那么会影响到整个项目。为了使脚本更严谨。
技术分享图片

如果为空的写法
技术分享图片

简化,加上exit,写为如下:
技术分享图片

上个脚本是逻辑错误,产生了一个空的值,然后去比较。下面脚本只是一个命令有错,不是脚本有错。
技术分享图片

if[-z“$n"]和if[-n"$n"]比较特殊,有一个必须加一个双引号,才能生效。为了不搞混,在使用-z和-n的时候,都加“”

可以写得更严谨。! - f /tmp/lalal 是指不文件存在。
技术分享图片

判断文件不为空,不用加双引号。
技术分享图片

判断变量不为空,要加双引号
技术分享图片

grep -w 可以精准过滤,grep -wq可以过滤出来,但是不输出。
技术分享图片

grepuseradd user1 不会生效,所以不会输出。
技术分享图片

20.8case判断(上)
技术分享图片

技术分享图片

技术分享图片
技术分享图片

20.9 case判断(下)

linux5月30课笔记

原文:http://blog.51cto.com/461565/2125251

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!