首页 > 其他 > 详细

IF 比较操作表达

时间:2016-04-01 06:41:49      阅读:220      评论:0      收藏:0      [点我收藏+]

1.  关于档案与目录的侦测逻辑卷标!

-f  常用!侦测『档案』是否存在 eg: if [ -f filename ]

-d  常用!侦测『目录』是否存在

-b  侦测是否为一个『 block 档案』

-c  侦测是否为一个『 character 档案』

-S  侦测是否为一个『 socket 标签档案』

-L  侦测是否为一个『 symbolic link 的档案』

-e  侦测『某个东西』是否存在!


2.  关于程序的逻辑卷标!

-G  侦测是否由 GID 所执行的程序所拥有

-O  侦测是否由 UID 所执行的程序所拥有

-p  侦测是否为程序间传送信息的 name pipe 或是 FIFO (老实说,这个不太懂!)


 

3.  关于档案的属性侦测!

-r  侦测是否为可读的属性

-w  侦测是否为可以写入的属性

-x  侦测是否为可执行的属性

-s  侦测是否为『非空白档案』

-u  侦测是否具有『 SUID 』的属性

-g  侦测是否具有『 SGID 』的属性

-k  侦测是否具有『 sticky bit 』的属性


 

4.  两个档案之间的判断与比较;例如[ test file1 -nt file2 ]

-nt 第一个档案比第二个档案新

-ot 第一个档案比第二个档案旧

-ef 第一个档案与第二个档案为同一个档案( link 之类的档案)


 

5.  逻辑的『和(and)』『或(or)』

&&  逻辑的 AND 的意思

||  逻辑的 OR 的意思

运算符号    代表意义

=   等于 应用于:整型或字符串比较 如果在[] 中,只能是字符串

!=  不等于 应用于:整型或字符串比较 如果在[] 中,只能是字符串

<    小于 应用于:整型比较 在[] 中,不能使用 表示字符串 >   大于应用于:整型比较 在[] 中,不能使用 表示字符串

-eq 等于 应用于:整型比较

-ne 不等于 应用于:整型比较

-lt 小于 应用于:整型比较

-gt 大于 应用于:整型比较

-le 小于或等于 应用于:整型比较

-ge 大于或等于 应用于:整型比较

-a  双方都成立(and) 逻辑表达式 –a 逻辑表达式

-o  单方成立(or) 逻辑表达式 –o 逻辑表达式

-z  空字符串

-n  非空字符串


shell中的特殊变量:

变量名

含义

$0  shell或shell脚本的名字

$*  以一对双引号给出参数列表

$@  将各个参数分别加双引号返回

$#  参数的个数

$_  代表上一个命令的最后一个参数

$$  代表所在命令的PID

$!  代表最后执行的后台命令的PID

$?  代表上一个命令执行后的退出状态

e.g.

编辑如下test.sh脚本

#!/bin/bash

echo $0

echo $*

echo $@

echo $#

echo $$

ls -a /home

echo $_

自己尝试结果


IF 比较操作表达

原文:http://aklaus.blog.51cto.com/9724632/1759006

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