LINUX SHELL条件判断

算术运算的条件判断
[] [[]]:
-eq
-ne
-lt
-le
-gt
-ge

(( )):><>=<==

[[email protected] ~]# if (( 2 == 3));then echo ‘123‘; fi
[[email protected] ~]# if (( 2 >= 3));then echo ‘123‘; fi
[[email protected] ~]# if (( 2 <= 3));then echo ‘123‘; fi
123
[[email protected] ~]# if (( 2 < 3));then echo ‘123‘; fi
123
[[email protected] ~]# if (( 2 > 3));then echo ‘123‘; fi


字符串的条件判断

-z
-n
=
==
!=
<
>

文件属性的条件判断

-f
-d
-c
-w
-L
-x
-e
-b
-r

#!/bin/bash
if [ -e demo.sh ];then
echo "文件存在"
fi

fpath="/etc/passwd"

if [ -e $fpath ];then
echo file exists;
else
echo file no exists;
fi

[ -e "/etc/hosts" ] || (echo ‘/etc/hosts not exist";exit 1)

if [ "$?" -eq 1 ];then
exit
fi

echo "/etc/hosts 文件存在"

declare -i a
a=20
if [ $a -eq 20 ];then
echo "var a 20"
fi

if [ $a -gt 10 ];then
echo ‘var >10‘;
fi

if [ "$LOGNAME" != "ROOT" ];then
echo "root "
fi

if [ "Bill" >"Apple" ];then
echo " BILL >APPLE"
fi

str="Bill"
if [ -n $str];then
echo "234"
fi

#!/bin/bash
NUM1=100
NUM2=200
if (($NUM1 > $NUM2));then
echo "ok"
else
echo "ok1"
fi

#!/bin/bash
Dir=/tmp/20140909
if [ ! -d $Dir ];then
mkdir -p $Dir
echo -e "\033[32mthis $Dir exist\033[0m"
else
echo -e "\033[32mthis $Dir is exist,please exit.\033[0m"

fi

#!/bin/bash
FILES=/tmp/test.txt
if [ -f $FILES ];then
echo "ok">>$FILES
else
cat $FILES
fi

-a: 逻辑表达式 -a 逻辑表达式
-o: 逻辑表达式 -o 逻辑表达式

时间: 2024-10-19 21:16:29

LINUX SHELL条件判断的相关文章

L7.1 linux shell 条件判断与循环语句

bash脚本条件判断语句详细使用 条件判断的使用方法及其相关示例: 本文对bash中test语句,if判断语句(单分支,多分支)case语句详细说明,如下 条件测试:test 作用:Shell中的test命令用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. test使用语法 test EXPRESSION 也可以使用 :[ EXPRESSION ]:[[ EXPRESSION ]] 整数测试: 隐含着做数值大小比较,所以不要给变量引用加引用: $A -gt $B:是否大于:是

Shell 条件判断

传统if 从句子——以条件表达式作为 if条件 if [ 条件表达式 ] then command command command else command command fi       条件表达式 文件表达式 if [ -f  file ]    如果文件存在 if [ -d ...   ]    如果目录存在 if [ -s file  ]    如果文件存在且非空 if [ -r file  ]    如果文件存在且可读 if [ -w file  ]    如果文件存在且可写 if

Linux shell脚本判断服务器网络是否可以上网

Linux shell脚本判断网络畅通 介绍 在编写shell脚本时,有的功能需要确保服务器网络是可以上网才可以往下执行,那么此时就需要有个函数来判断服务器网络状态 我们可以通过curl来访问 www.baidu.com,从而判断服务器网络状态是否可以畅通的 网络状态判断 #!/bin/bash #检测网络链接畅通 function network() { #超时时间 local timeout=1 #目标网站 local target=www.baidu.com #获取响应状态码 local

shell中的变量及shell条件判断

Shell 基础之变量和条件判断 一.shell概述 1.shell概述: shell是一个命令行的解释器,为用户提供了一个向Linux内核发送请求以便运行程序的界面系统及程序,用户可以用shell来启动.挂起.停止甚至编写一些程序,shell还是一个功能强大的编程语言,shell是解释性的脚本语言,在shell中可以直接调用Linux命令. 2.shell脚本的用途 (1)自动化常用的命令 (2)执行系统管理和故障排除 (3)执行简单的应用程序 (4)处理文本或文件 3.shell的分类 (1

linux shell IF判断时报not found错误解决方法

最近一个项目需要写一个linux shell脚本,在linux指定目录下遍历*.sql文件,如果有的话,执行文件(文件里面是一个update语句),在遍历文件夹时总是报一个[sql: not found的错误,差点崩溃了,后来才知道原因,特意给大家分享下,希望其他人少走弯路 原来if判断那块有个坑,if空格[空格$? -eq 0空格]; if后面加空格,条件两边也得加空格,以下是数字比较和字符串比较例子 ---------number if [ 1 -eq 2 ];then fi -------

Linux shell if判断语句

无论什么编程语言都离不开条件判断.SHELL也不例外. 大体的格式如下: if list then do something here elif list then do another thing here else do something else here fi 一个例子: #!/bin/sh SYSTEM=`uname -s` # 获取操作系统类型,我本地是linux if [ $SYSTEM = "Linux" ] ; then # 如果是linux话输出linux字符串

shell条件判断

条件判断式 只要讲到程序的话,那么条件判断式,亦即是if then这种判别式肯定一定要学习的,另外一种是case...esac if....then 这个是if...then 是最常见的条件判断式了,它分为单分支条件判断式,双分支条件判断式,多分支条件判断式 单分支条件判断语句: if [ 条件判断式 ] then 输出内容 fi 双分支条件判断式: if [ 条件判断式 ] then 输出内容 else 输出内容 fi 多分支条件判断式 if [ 条件判断式 ] then 输出内容 elif

[Shell]条件判断与流程控制:if, case, for, while, until

-------------------------------------------------------------------------------------------------------- [条件判断] 1. 按文件类型进行判断 -b 文件    判断该文件是否存在,并且为块设备文件(是块设备文件为真) -c 文件    判断该文件是否存在,并且为字符设备文件(是字符设备文件为真) -d 文件    判断该文件是否存在,并且为目录文件(是目录为真) -e 文件    判断该文

linux shell 中判断语句

切记if和其中的[]都要加空格符 1.字符串判断 str1 = str2 当两个串有相同内容.长度时为真str1 != str2 当串str1和str2不等时为真-n str1 当串的长度大于0时为真(串非空)-z str1 当串的长度为0时为真(空串)str1    当串str1为非空时为真 2.数字的判断 int1 -eq int2 两数相等为真int1 -ne int2 两数不等为真int1 -gt int2 int1大于int2为真int1 -ge int2 int1大于等于int2为真