1. 基本语法
test condition
或
[ condition ]
使用括号方式时,条件与括号之间要加空格。
2. 测试文件状态
例:测试文件 scores.txe 是否可执行。
[root@localhost ~]# [ -x scores.txt ]
[root@localhost ~]# echo $?
1
条件测试可以使用以下条件表达式:
-d 目录
-f 文本文件
-L 符号链接
-s 文件非空
-r 可读
-w 可写
-x 可执行
-u 文件有suid位设置
3. 字符串测试
字符串测试是条件判断中最重要的部分,
例:测试两个字符是否相等。退出状态变量 $?,0表示成功,1表示失败。
if 命令就是使用该值做判断。
[root@localhost ~]# [ "aa" = "bb" ]
[root@localhost ~]# echo $?
1
if [ -x scores.txt ]; then echo 11111; fi;
字符串测试可以使用以下条件表达式:
= 两字符串相等。
!= 两字符串不等。
-z 空串。
-n 非空串。
4. 数字测试
例:测试第一个数字小于第二个数字。
[root@localhost ~]# [ "10" -lt "99" ]
[root@localhost ~]# echo $?
0
数字测试可以使用以下条件表达式:
-eq 相等。
-ne 不等
-gt 大于。
-ge 大于或等于。
-lt 小于。
-le 小于或等于。
5. expr数字运算
加法运算:expr 10 + 10
减法运算:expr 20 - 10
加法运算:expr 10 / 5
乘法运算:expr 10 \* 5
如果是非数字参加运算会报错误,利用此点可以用来测试数字格式。
root@localhost opt]# if expr a + 100; then echo aaaa; else echo bbbb; fi;
expr: non-numeric argument
bbbb
6. 两个以上的条件之间的逻辑关系
[root@localhost opt]# [ -w results.txt -a -w scores.txt ]
[root@localhost opt]# echo $?
0
-a 逻辑与,两个条件同时为0,结果为0。-o 逻辑或,只要一个条件为0,结果为0。
分享到:
相关推荐
17_基础shell编程-条件测试.PDF 18_基础shell编程-控制流结构.PDF 19_基础shell编程-shell 函数.PDF 20_基础shell编程-向脚本传递参数.PDF 21_基础shell编程-创建屏幕输出.PDF 22_基础shell编程-创建屏幕输入....
通过以上详细说明,我们可以看到Shell编程-2这一部分涵盖了Shell编程的基础知识,包括条件测试、基本控制结构以及函数的使用。这些知识点对于理解和编写有效的Shell脚本至关重要,也是Linux运维人员必备的技能之一。
Shell程序设计 - 条件测试.mp4,Linux系统shell编程培训视频,大厂内部员工培训视频资料,都是纯纯的干货,欢迎下载使用
学生需要熟悉和掌握如`chmod`(改变文件权限)、`clear`(清除屏幕)、`echo`(打印文本)、`if`条件测试、`grep`(搜索文本)、`awk`(文本处理)等常用Linux命令。 8. **设计功能**: - 显示所有用户信息:脚本...
3. **条件测试**:使用条件表达式(如`[ -f file ]`检查文件是否存在,`[ $VAR -gt 10 ]`比较数值)进行条件判断,结合`if`、`else`、`elif`构建复杂的逻辑。 4. **循环语句**:包括`for`、`while`和`until`循环,...
【shell编程-用户信息管理(模拟)】 在Linux操作系统中,shell编程是一种强大的工具,用于自动化执行各种任务。用户信息管理是系统管理的核心部分,它涉及到用户账户的创建、删除和查询。本课程设计旨在让学生掌握...
本文将深入探讨Shell编程中的流程控制,包括`for`、`while`、`until`循环,以及`case`条件选择和`select`交互式选择。此外,还将介绍一些关键的控制关键字和函数定义,以及`read`、`readonly`和`expr`表达式等相关...
4. 条件测试:`if`语句和相关的测试命令如`[ ]`(test命令)用于进行条件判断。 三、Shell脚本编程 1. 变量:Shell脚本中的变量无需声明,直接赋值即可。例如,`NAME="John"`。 2. 控制结构:包括`if...else`、`for...
第十七章 条件测试 第十八章 控制流结构 第十九章 SHELL函数 第二十章 向脚本传递参数 第二一章 创建屏幕输出 第二二章 创建屏幕输入 第二三章 调试脚本 第二四章 SHELL嵌入命令 第五部分 高级SHELL编程技巧 第二五...
在 Shell 脚本中,可以通过使用 `test` 命令来进行比较操作,这在条件判断中非常有用。 1. **字符串比较**: - `=`:测试两个字符串是否相等。 - `-z`:测试字符串是否为空。 - `-n`:测试字符串是否非空。 - `...
`[ -f "$filename" ]`是一个条件测试,判断文件是否存在。双引号用于防止变量中的空格导致问题。 流程控制结构还包括函数定义,允许我们将代码组织成可重用的模块。此外,shell支持命令替换、命令别名、管道和...
10. **test.sh**:通常是一个测试脚本,可能包含各种Shell编程的实例,用于学习和调试。 掌握这些知识后,你将能够编写和管理Linux服务器,实现自动化任务,提升运维效率。通过实践这些脚本和范例,可以深入理解...
- **Tests**:详细解析shell中的条件测试命令,包括文件测试、数值比较和逻辑运算。 #### 第三部分:超越基本 - **变量重游**:进一步探索变量的高级用法,如内部变量的使用、字符串操作和参数替换。 - **操作符和...
第十七章 条件测试 第十八章 控制流结构 第十九章 SHELL函数 第二十章 向脚本传递参数 第二一章 创建屏幕输出 第二二章 创建屏幕输入 第二三章 调试脚本 第二四章 SHELL嵌入命令 第五部分 高级SHELL编程技巧...
Linux Shell编程是Linux系统管理与自动化任务的核心技术之一,它主要指的是使用Shell脚本来执行一系列命令,实现自动化操作。在Linux环境中,Bash(Bourne-Again SHell)是最常用的Shell,也是许多Linux发行版的默认...
Linux Shell编程艺术是掌握Linux系统管理和自动化任务执行的关键技能之一。Shell脚本是Linux环境中的命令解释器,它允许用户通过编写脚本来执行一系列指令,从而提高效率和自动化程度。在"Linux Shell编程艺术-3"中...
- **条件测试与逻辑运算**:掌握各种测试构造(如`[ ]`、`[[ ]]`)、文件测试操作符、数值比较操作符,以及如何构建复杂的条件语句。 - **算术与逻辑操作**:了解Shell中的基本算术运算和逻辑运算,包括双括号构造`...
- **条件测试**:使用 `[ ]` 或者 `test` 命令来进行条件判断,例如检查文件是否存在或者比较两个字符串是否相等。 - **循环结构**:支持 `for` 循环和 `while` 循环,可以用来重复执行一系列命令直到满足特定条件...