Linux写脚本经常用到的测试命令_linux写一个简单的脚本

介绍一个Linux写脚本经常用到的测试命令test

test命令用于检查文件类型和比较值。Test用于条件执行。

一、test常用于

1. 文件属性比较

2. 执行字符串比较

3. 基本的算术比较

二、关系运算符

整数 字符串 (符号关系运算符)

-lt < # 小于,参数1是否小于参数2

-gt > # 大于,参数1是否大于参数2

-le <= # 小于或等于,参数1是否小于等于参数2

-ge >= # 大于或等于,参数1是否大于等于参数2

-eq == # 等于

-ne != # 不等于,比较两个参数是否不相等

三、常用的表达式

-a # 并且,两条件为真

-b # 是否块文件

-p # 文件是否为一个命名管道

-c # 是否字符文件

-r # 文件是否可读

-d # 是否一个目录

-s # 文件的长度是否不为零

-e # 文件是否存在

-S # 是否为套接字文件

-f # 是否普通文件

-x # 文件是否可执行,则为真

-g # 是否设置了文件的 SGID 位

-u # 是否设置了文件的 SUID 位

-G # 文件是否存在且归该组所有

-w # 文件是否可写,则为真

-k # 文件是否设置了的粘贴位

-t fd # fd 是否是个和终端相连的打开的文件描述符(fd 默认为 1)

-o # 或,一个条件为真

-O # 文件是否存在且归该用户所有

! # 取反

四、一些实例:

1. 判断文件是否存在

test -f /etc/passwd && echo "File /etc/passwd found." || echo "File /etc/passwd not found."

返回:File /etc/passwd found.

2. 判断数字是否相等

test 5 -eq 5 && echo Yes || echo No

返回:Yes

3. 判断大小

test 5 -ne 10 && echo Yes || echo No

返回:Yes

test 20 -lt 10 && echo Yes || echo No

返回:No

说明:命令执行成功(返回0时)则执行&&后面的命令;如果命令执行不成功(返回1时)则执行||后面的命令。

原文链接:,转发请注明来源!