shell常用的判断条件

1、判断文件夹是否存在
if [ -d /home/q/www ];then echo "true"; else echo "false" ;fi
(系统内存在文件夹 /home/q/www)

2、判断文件是否存在
if [ -e /etc/passwd ];then echo "true"; else echo "false" ;fi
if [ -f /etc/passwd ];then echo "true"; else echo "false" ;fi
文件存在且大小大于0
if [ -s /etc/passwd ];then echo "true"; else echo "false" ;fi

3、判断文件可读
if [ -r /etc/passwd ];then echo "true"; else echo "false" ;fi

4、判断文件可写
if [ -w /etc/passwd ];then echo "true"; else echo "false" ;fi

5、判断文件可执行
if [ -x /etc/passwd ];then echo "true"; else echo "false" ;fi

6、字符串长度为0,返回真
长度为0
if [ -z "" ];then echo "true"; else echo "false" ;fi
长度不为0
if [ -z "xiaoqiang" ];then echo "true"; else echo "false" ;fi

7、字符串长度不为0,返回真
长度不为0
if [ -n "xiaoqiang" ];then echo "true"; else echo "false" ;fi
长度为0
if [ -n "" ];then echo "true"; else echo "false" ;fi

8、判断字符串相等
if [ "xiaoqiang" = "xiaoqiang" ];then echo "true"; else echo "false" ;fi

9、判断字符串不相等
if [ "xiaoqiang" != "xiaoqiang" ];then echo "true"; else echo "false" ;fi

10、判断整数相等
if [ 1 -eq 1 ];then echo "true"; else echo "false" ;fi

11、判断整数不相等
if [ 1 -ne 1 ];then echo "true"; else echo "false" ;fi

12、判断整数 1 < 2
if [ 1 -lt 2 ];then echo "true"; else echo "false" ;fi

13、判断整数 2 <= 2
if [ 2 -le 2 ];then echo "true"; else echo "false" ;fi

14、判断整数3 > 2
if [ 3 -gt 2 ];then echo "true"; else echo "false" ;fi

15、判断整数 3 >= 3
if [ 3 -ge 3 ];then echo "true"; else echo "false" ;fi

16、逻辑运算
!(非)
if [ ! 3 -ge 3 ];then echo "true"; else echo "false" ;fi

-a(and)
 if [ -z "" -a 3 -ge 3 ];then echo "true"; else echo "false" ;fi

 -o(或)
if [ -z "sadfsa" -o 3 -ge 3 ];then echo "true"; else echo "false" ;fi

17、特殊变量
echo "number:$#"    获取参数个数
echo "scname:$0"    获取脚本名称
echo "first:$1"            获取第一个参数
echo "second:$2"         获取第二个参数
echo "argume:[email protected]"         获取所有参数
echo "show parm list :$*" 数据参数的list
echo "show process id :$$"  获取进程id
echo "show precomm stat:$?"     获取命令执行的结果
时间: 2024-11-05 14:46:46

shell常用的判断条件的相关文章

shell中if判断条件中使用[],[[]],(())还是test,let的比较

学习shell的时候总是被shell里的条件判断方式搞得头疼,经常不知道改 用[],[[]],(())还是test,let,而很少有书把它们的关系讲解的很清楚(应该是我悟性差或是看书太少),今天总结一下,基础的东西如它们 的使用方法不再赘述,重点说说它们的区别的使用时应该注意的地方. 先说[]和test,两者是一样的,在命令行里test expr和[ expr ]的效果相同.test的三个基本作用是判断文件.判断字符串.判断整数.支持使用与或非将表达式连接起来.要注意的有: 1.test中可用的

Shell脚本IF条件判断和判断条件总结

转自:http://m.jb51.net/article/56553.htm 这篇文章主要介绍了Shell脚本IF条件判断和判断条件总结,本文先是给出了IF条件判断的语法,然后给出了常用的判断条件总结,需要的朋友可以参考下 前言:      无论什么编程语言都离不开条件判断.SHELL也不例外. if list then           do something here       elif list then           do another thing here       e

[Shell]if 常用判断条件

IF 判断 之前也写过简单的shell脚本,也不是转职运维,和系统相关的工作比较少,所以不怎么熟练. 最近由于系统总是出现各种乱七八糟的问题,也没有人来协助,只好自己写shell脚本了,都是些基础的脚本,但由于shell的语法和通常的高级语言有些不一样,所以还是要系统的看下常用的部分. if语句就是很重要的一个. 这种文章很多,只是拿来主义,如果有心得体会也会加上,小计下以后备查. 基本结构:  if语句块需要使用if结束 if condition then statements elif co

Shell中条件判断语法与判断条件

一,简介 Shell各种判断结构和运算符的用法是shell编程的基础,了解shell的判断.运算符和一些退出状态 对后面的学习有很重要的影响.shell有一个内部命令test经常用于对判断语句 进行测试一种或几种状态的条件是否成立 二. 判断条件 (1)Linux的shell中的测试命令,用于测试某种条件或某几种条件是否真实存在 测试命令是判断语句和循环语句中条件测试的工具,对判断和运算符的比较测试有很大的帮助. (2)测试条件为真,返回一个0值:      为假,返回一个非0整数值 测试命令有

shell编程中的条件判断(shell 05)

shell编程中的条件判断条件if-thencase if-then单条件if commandthen commandsfi当command返回码为0时 条件成立 if.sh #! /bin/bash if date then echo "command exec" fi if date123 then echo "command exec1" fi echo "out if" [[email protected] sh]# ./if.sh 20

SHELL学习笔记----IF条件判断,判断条件

SHELL学习笔记----IF条件判断,判断条件 前言: 无论什么编程语言都离不开条件判断.SHELL也不例外.  if list then           do something here       elif list then           do another thing here       else          do something else here fi  EX1: #!/bin/bash if [ `uname -m` == "x86_64" ]

Shell 常用命令

Shell 常用命令 这篇博客记录了一些 Shell 常用命令 供未来查阅. 添加ll 为了简化 "ls -l",可以在~/.bash_profile中加入: 1 2 alias ll='ls -l' 获得参数 $0是命令本身$1是第一个参数 $ $可以认为是 获取内容 . 内置变量 bash有很多内置变量,我们可以使用$获取到它们,例如: 1 2 3 4 5 $PWD $HOME $PATH $(pwd) 读取配置 配置数据可以像下面一样: 1 2 3 4 Fansy:UtilToo

Shell常用命令和流程控制

在shell脚本中可以使用三类命令: >>> Unix 命令 <<< 虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令.这些命令通常是用来进行文件和文字操作的. 常用命令语法及功能 echo "some text": 将文字内容打印在屏幕上 ls: 文件列表 wc –l file  wc -w file  wc -c file: 计算文件行数.计算文件中的单词数.计算文件中的字符数 cp sourcefile dest

Linux shell 流程控制(条件if,循环for,while)

Linux shell 流程控制(条件if,循环[for,while],选择[case]语句实例 linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case).下面我将通过例子介绍下,各个语句使用方法. 一.shell条件语句(if用法) if语句结构[if/then/elif/else/fi] if 条件测试语句 then action [elif 条件 action else action ] fi 如果对于:条件测试语句不是