linux shell编程之if语句

-eq 等于

-ne 不等于

-gt 大于

-lt 小于

-le 小于或等于

-ge 大于或等于

-z 空串

= 两个字符相等

!= 两个字符不相等

-n 非空串

字符串通常用来检查用户输入,系统环境是否满足条件,在提供交互式操作的shell脚本中也可以判断用户输入位置参数是否符合要求,字符串的常用操作如下:

文档比较运算符:

-e filename  假如filenanme存在,则为真

-d filename  假如filename为目录,则为真

-f filename 假如filename为常规文档,则为真

-L filename 假如filename为符号链接,则为真

-r filename 假如filename可读,则为真

-w filename 假如filename可写,则为真

-x filename 假如filename可执行,则为真

if 语句是循环语句中一种又称为控制语句,通过制定条件进行判断执行,只有条件成立的时候才会执行相应的代码,否则不会执行任何操作。

*单分支if语句格式:

if 条件测试操作

then

命令序列

fi

例子1

vim a.txt

#!/bin/bash

if

[ ! -d /media/cdrom ]

thenk

mkdir -p /media/cdrom

fi

wq!

sh -x a.txt        x选项为查看调试过程

例子2

vim b.txt

#!/bin/bash

NUM=100

if (($NUM > 4));then

echo "this num is $NUM greater 4!"

fi

wq!

sh -x b.txt

*双分支if语句格式:

双分支的选择结果,要求针对条件成立,条件不成立两种情况分别执行不同的操作

语法结构

if 条件测试操作

then ( 条件成立执行)

命令序列1

else(否则,条件不成立,则执行)

命令序列2

fi

例子3

vim c.txt

#!/bin/bash

ping -c 3 -i 0.2 -w 3 $1

if

[ $? -eq 0 ]

then

echo "ip is up"

else

echo "ip is down"

fi

sh -x c.txt 172.0.0.1

例子4

vim b.txt

#!/bin/bash

word=$1

grep ^$1$" /usr/share/dict/words -q

if [ $? -eq 0 ];then

echo "word is a dictionary word"

else

echo "word is not a dictionary word"

fi

时间: 2024-08-12 06:59:11

linux shell编程之if语句的相关文章

shell编程之if语句

目录 shell编程之if判断 1.整数比较 2.字符串比较 3.举例 1.数字比较 2.字符串比较 4.Other shell编程之if判断 1.整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如:if [ "$a" -ne "$b" ] -gt 大于,如:if [ "$a" -gt "$b" ] -ge 大于等于,如:if [ "$a&

linux shell编程之bash历史命令与补全

bash是linux标准shell的基本功能 命令名称:history

shell编程之case语句

bash脚本编程: case语句: 多分支if语句: if CONDITION1; then 分支1 elif  CONDITION2; then 分支2 ... else CONDITION; then 分支n fi 示例1:显示一个菜单给用户: cpu) display cpu information mem) display memory information disk) display disks information quit) quit 要求:(1) 提示用户给出自己的选择: (

Linux Shell编程之softlink invoke与工作目录问题

softlink 又叫做symbolic link,相当于一种"快捷方式",由ln –s sourcefile distinctionfile (ln –s TARGET LINK_NAME)创建,连接文件的存在使得简化了文件系统,用户操作起来更加方便.但在Shell编程中却是一个需要非常注意的点,因为工作目录(Work Directory)的原因,Shell需要使用"标准"的变量(跟系统环境变量有些类似)来定位它当前的工作目录以及这些目录中的文件,假如工作目录定义

Shell编程之case语句与循环语句

case语句分支 1.case语句的结构 case 变量值 in模式 1)命令序列 1;;模式 2)命令序列 2;;......*)默认命令序列esac case分支语句的结构图使用case分支语句的注意点:1.case行尾必须为单词"in",每一个模式必须以右括号")"结束.2.双分号";;"表示命令序列的结束.3.模式字符串中,可以用方括号表示一个连续的范围,如"[0-9]";还可以用竖杠符号"|"表示

linux shell编程之bash 常见配置文件

先说一个命令: source +  配置文件 或者 . (点) 配置文件 source 强制性配置文件生效 主要环境变量的文件: 优先级: 其他配置文件:

linux shell编程之bash别名、快捷键及输入输出重定向

命令别名:alias 让别名永远生效: 命令执行顺序: bash快捷键: 输入输出重定向: 正确和错误都保存到文件: 输出重定向:(除了给软件包打补丁时使用,一般不用)

linux shell编程之bash 各种变量

自定义变量定义与使用: 环境变量: ps1:修改提示符 位置参数变量: 预定义变量: 接受键盘输出:read命令

linux shell编程之bash 多命令顺序执行与管道符

主要包含命令: 分号使用示例: &&运算符 II运算符 管道符 | 前面命令的正确输出作为后米命令的操作对象 最简单的命令: