shell脚本在测试方面能拿来干嘛

shell脚本在测试方面能拿来干嘛,第1张

shell脚本可以用来测试系统的性能,以及其上运行的程序的可友野靠性和运行效率。它可以帮助用户探测哪些应用程序存在性能问题,比如CPU利用率过高、反应慢、进程占用服务器等。此外,它还能检测服务器上正常运行的程序敏告培,比如用户的ftp、数据库和web服务,查桥唯看它们的响应情况、性能比较和兼容问题等。

下列每一个运算符在满足其下条件时,返回的结果为真

检姿搜测文件是否存在

检测文件是否存在

等价于 -e。不推荐使用,已被弃用。

文件是常规文件(regular file),而非目录或 设备文件

文件大小不为0

文件是一个目录

文件是一个 块设备

文件是一个 字符设备

文件是一个 管道设备

文件是一个 符号链接

文件是一个符号链接

文件是一个 套接字

文件(文件描述符)与终端设备关联

该选项通常被用于 测试脚本中的 stdin [ -t 0 ] 或 stdout [ -t 1 ] 是否为终端设备

该文件对执行测试的用户可读

该文件对执行测试的用户可写

该文件可被执行测试的用户所执行

文件或目录设置了 set-group-id sgid 标志

如果一个目录设置了 sgid 标志,那么在该目录中所有的新建文件的权限组都归属于该目录的权限组,而非文件创建者的权限组。该标志对共享文件夹很有用

文件设置了 set-user-id suid 标志。

一个属于 root 的可执行文件设置了 suid 标志后,即使是一个普通用户执行也拥有 root 权限。

对需要访问硬件设备的可执行文件(例如配侍 pppd 和 cdrecord)很有用。

如果没有 suid 标志,这些可执行文件就不能被非 root 用户所调用了

设置了 suid 标志后,在权限中会显示 s

设置了粘滞位(sticky bit)

标志粘滞位是一种特殊的文件权限。如果文件设置了粘滞位,那么该文件将会被存储在高速缓存中以便快速访问。如果目录设置了该标记,那么它将会对目录的写权限进行限制,目录中只有文件的拥有者可以修改或删除文件。设置标记后你可以在权限中看到 t

如果一个用户不是设置了粘滞位目录的拥有者,但对该目录有写权限,那么他仅仅可以删除目录中他所拥有的文件。这可以防止用户不经意间删除或修改其他人的文件,例如 /tmp 文件夹。(当然目录的所有者可以删除或修改该目录下的所有文件)

执行用户是文件的拥有者

文件的组与执行用户的组相同

文件在在上次访问后被修改过了

文件 f1 比文件 f2 新

文件 f1 比文件 f2 旧

文件 f1 和文件 f2 硬链接到同一个文件

取反——对测试结果取反(如果条件缺失则返回真)

样例-1. 检测迹卖历链接是否损坏

二元比较 *** 作比较变量或者数量。注意整数和字符串比较使用的是两套运算符

整数比较

等于

不等于

-gt )

大于

大于等于

小于

小于等于

小于(使用 双圆括号)

小于等于(使用双圆括号)

大于(使用双圆括号)

大于等于(使用双圆括号)

等于

等于

和 = 同义 == 运算符在 双方括号和单方括号里表现不同

不等于

在 [[ ... ]] 结构中会进行模式匹配。

小于,按照 ASCII码 排序

注意在 [] 结构里 < 需要被 转义

大于,按照 ASCII 码排序

注意在 [] 结构里 > 需要被转义

字符串为空,即字符串长度为0

字符串非空(null)

使用 -n 时字符串必须是在括号中且被引用的

使用 ! -z 判断未引用的字符串或者直接判断 通常可行,但是非常危险

判断字符串时一定要引用

样例-2. 算术比较和字符串比较

样例-3. 测试字符串是否为空(null)

样例-4. zmore

逻辑与

exp1 -a exp2 返回真当且仅当 exp1 和 exp2 均为真

逻辑或

如果 exp1 或 exp2 为真,则 exp1 -o exp2 返回真。

以上两个 *** 作和 双方括号结构中的 Bash 比较运算符号 && 和 || 类似

测试 *** 作 -o 和 -a 可以在 test 命令或在测试括号中进行

rihad 指出:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12421442.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存