linux Shell中常用的条件判断

-b file            若文件存在且是一个块特殊文件,则为真

-c file            若文件存在且是一个字符特殊文件,则为真

-d file            若文件存在且是一个目录,则为真

-e file            若文件存在,则为真

-f file            若文件存在且是一个规则文件,则为真

-g file            若文件存在且设置了SGID位的值,则为真

-h file            若文件存在且为一个符合链接,则为真

-k file            若文件存在且设置了"sticky"位的值

-p file            若文件存在且为一已命名管道,则为真

-r file            若文件存在且可读,则为真

-s file            若文件存在且其大小大于零,则为真

-u file            若文件存在且设置了SUID位,则为真

-w file            若文件存在且可写,则为真

-x file            若文件存在且可执行,则为真

-o file            若文件存在且被有效用户ID所拥有,则为真

-z string          若string长度为0,则为真

-n string          若string长度不为0,则为真

string1 = string2  若两个字符串相等,则为真

string1 != string2 若两个字符串不相等,则为真

int1 -eq int2      若int1等于int2,则为真

int1 -ne int2      若int1不等于int2,则为真

int1 -lt int2      若int1小于int2,则为真

int1 -le int2      若int1小于等于int2,则为真

int1 -gt int2      若int1大于int2,则为真

int1 -ge int2      若int1大于等于int2,则为真

!expr              若expr为假则复合表达式为真。expr可以是任何有效的测试表达式

expr1 -a expr2     若expr1和expr2都为真则整式为真

expr1 -o expr2     若expr1和expr2有一个为真则整式为真

特殊变量

$0                 正在被执行命令的名字。对于shell脚本而言,这是被激活命令的路径

$n                 该变量与脚本被激活时所带的参数相对应。n是正整数,与参数位置相对应($1,$2…)

$#                 提供脚本的参数号

$*                 所有这些参数都被双引号引住。若一个脚本接收两个参数,$*等于$1$2

$@                 所有这些参数都分别被双引号引住。若一个脚本接收到两个参数,$@等价于$1$2

$?                 前一个命令执行后的退出状态

$$                 当前shell的进程号。对于shell脚本,这是其正在执行时的进程ID

$!                 前一个后台命令的进程号

linux Shell中常用的条件判断的更多相关文章

  1. bash Shell 中如何实现条件判断之if判断

    http://blog.51cto.com/lovelace/1211353 bash中如何实现条件判断?条件测试类型:    整数测试    字符测试    文件测试 一.条件测试的表达式:     ...

  2. Linux shell脚本之 if条件判断 (转)

    IF条件判断 1.基本语法: if [ command ]; then 符合该条件执行的语句 fi 2.扩展语法: if [ command ];then 符合该条件执行的语句 elif [ comm ...

  3. shell编程学习笔记(八):Shell中的if条件判断

    编程语言中都有条件判断,shell编程也不例外,下面我们来看一下shell中应该怎么使用if条件判断 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts ...

  4. shell编程学习笔记(九):Shell中的case条件判断

    除了可以使用if条件判断,还可以使用case 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts # vim script08.sh 开始编写scrip ...

  5. Shell中[]里面的条件判断

    1.字符串判断 str1 = str2 当两个串有相同内容.长度时为真 str1 != str2 当串str1和str2不等时为真 -n str1 当串的长度大于0时为真(串非空) -z str1 当 ...

  6. Linux Shell中的特殊符号和含义简明总结(包含了绝大部份)

    case语句适用于需要进行多重分支的应用情况. case分支语句的格式如下: case $变量名 in 模式1) 命令序列1 ;; 模式2) 命令序列2        ;; *) 默认执行的命令序列  ...

  7. shell中常用的特殊符号

    在shell中常用的特殊符号罗列如下: # ; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# $@ `co ...

  8. centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课

    centos   shell脚本编程1 正则  shell脚本结构  read命令  date命令的用法  shell中的逻辑判断  if 判断文件.目录属性  shell数组简单用法 $( ) 和$ ...

  9. Linux Shell 中 > 和 >> 的异同点和应用场景

    Linux Shell 中 > 和 >> 的异同点和应用场景 > 和 >> 的异同点 举例说明(start.sh 为某个服务的启动脚本,start.log 为某服务 ...

随机推荐

  1. 【ACM非算法部分】STL汇总

    stackqueuepriority_queuemapsetpair ====================================== stack:(栈) 包含:#include<s ...

  2. 接口测试基础——第2篇smtplib发送带附件的邮件

    我先给大家补充一个用QQ发送纯文本电子邮件的代码,用QQ的朋友可以参考一下: # coding=utf-8 import smtplib from email.mime.text import MIM ...

  3. maxsigma

    10^8 768 10^7 448 10^6 240 10^5 128

  4. 关于ip层的作用网址链接

    http://rabbit.xttc.edu.cn/rabbit/htm/artical/201091113054.shtml

  5. js中使用分号的情况

  6. 获取DOS命令的返回值.

    procedure CheckResult(b: Boolean); begin if not b then raise Exception.Create(SysErrorMessage(GetLas ...

  7. MySQL error : Deadlock found when trying to get lock; try restarting transaction

    在使用 MySQL 时,我们有时会遇到这样的报错:“Deadlock found when trying to get lock; try restarting transaction”. 在 14. ...

  8. java冒泡排序算法例子

    总结:运行显示数组下标越界说明,数组长度a.length.表示数组的长度,但索引值是要减一的.勿忘 package com.c2; //冒泡排序 //从小到大的顺序排列 public class MA ...

  9. java中利用if_else if循环求税率

    总结:循环对我来说重点是在哪里结束的,还有数据类型 package com.badu; import java.util.Scanner; //.输入一个正整数repeat (0<repeat& ...

  10. Java-Maven-Runoob:Maven Eclipse

    ylbtech-Java-Maven-Runoob:Maven Eclipse 1.返回顶部 1. Maven Eclipse Eclipse 提供了一个很好的插件 m2eclipse ,该插件能将 ...