ABS / 多敲码 · 2022年10月13日 0

条件:测试和比较(第7章)

测试一个条件,然后根据测试的结果行动.Bash有test命令, 丰富的括号(方括号,小括号)操作符,以及if/then构造.

if/then构造测试命令列表的退出状态是否为0,在为0的情况下可以执行后续命令.与之等价的是左方括号. [[]]扩展测试命令是关键词,而非命令.
根据算术运算符执行的结果,((…))和let…构造返回退出状态.因此这里的算数扩展也被用来作为算数比较.(注意:算术表达式的退出值不是出错值).

(())扩展并计算算数表达式.如果计算的结果是0,则返回退出状态1或者false, 非零表达式返回退出状态0或者true.

文件测试操作符测试的是文件的不同状态,比如是否存在,类型, 权限, 用户和组, 创建时间等.

算术比较的是值的大小,字符串比较的是串的形式和长度(非值部分).