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. Linux下Apache配置局域网访问出现的问题

    在网站安装好之后,本机可以访问,但是局域网内无法访问,我查看了 /etc/httpd/conf/httpd.conf 看到我的配置如下 <Directory ......> Allow A ...

  2. 关于 avalon总线理解(整理)

    1,一个基于Avalon接口的系统会包含很多功能模块,这些功能模块就是Avalon存储器映射外设,通常简称Avalon外设.所谓存储器映射外设是指外设和存储器使用相同的总线来寻址,并且CPU使用访问存 ...

  3. FIR滤波器的FPGA实现方法

    FIR滤波器的FPGA实现方法 2011-02-21 23:34:15   来源:互联网    非常重要的基本单元.近年来,由于FPGA具有高速度.高集成度和高可靠性的特点而得到快速发展.随着现代数字 ...

  4. bzoj 1499 [NOI2005]瑰丽华尔兹——单调队列优化dp

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1499 简单的单调队列优化dp.(然而当时却WA得不行.今天总算填了坑) 注意滚动数组赋初值应 ...

  5. 用Toast来增加调试效率的小技巧

    import android.content.Context; import android.widget.Toast; /** * Created by apple on 10/7/15. */ p ...

  6. 如何查看自己的laravel版本

    方法1: 使用php artisan --version ,只要能看懂这个命令的人一定已经具有初步的Laravel知识.再介绍一种不需要命令,直接去文件中去查看的方法. 方法2: 在项目文件中找ven ...

  7. Fineui往框架添加选项卡的方法

    在主页F.ready(function (){...}方法中添加js代码 // 添加示例标签页 window.addExampleTab = function (id, url, text, icon ...

  8. java中绘制长方形,椭圆形,圆形的方法

    总结:方法,main函数的作用你还没搞清楚 //画一个矩形 import java.awt.*; import javax.swing.*; public class Test2 extends JF ...

  9. mysql事务之一:MySQL数据库事务隔离级别(Transaction Isolation Level)及锁的实现原理

    一.数据库隔离级别 数据库隔离级别有四种,应用<高性能mysql>一书中的说明: 然后说说修改事务隔离级别的方法: 1.全局修改,修改mysql.ini配置文件,在最后加上 1 #可选参数 ...

  10. ThreadPoolExecutor之四:jdk实现的ScheduledThreadPoolExecutor

    一.定时任务调度方式常见的有: 1.cron是一个linux下的定时执行工具,一些重要的任务的定时执行可以通过cron来实现,例如每天凌晨1点备份数据等. 2.在JAVA WEB开发中,我们也经常需要 ...