shell-printf和test
shell-printf和test
Shell printf 命令
当你使用Shell中的printf命令时,它可以帮助你格式化和输出文本。
打印简单文本
这将简单地打印字符串”Hello, World!”,并在末尾添加一个换行符\n来换行。
1
printf "Hello, World!\n"
Shell test 命令
当你使用Shell中的test命令时,它用于测试条件是否为真(True)。test命令通常用于Shell脚本中的条件判断,以便根据条件的结果执行不同的操作。
1、文件测试
用于测试文件和目录的属性 -e 文件:检查文件是否存在。 -f 文件:检查文件是否是一个常规文件。 -d 文件:检查文件是否是一个目录。 -s 文件:检查文件是否不为空(即文件大小是否大于零)。 -r 文件:检查文件是否可读。 -w 文件:检查文件是否可写。 -x 文件:检查文件是否可执行。 示例:
1
2
3
if [ -e "myfile.txt" ]; then
echo "文件存在"
fi
2、字符串比较
用于测试字符串的内容 字符串1 = 字符串2:检查两个字符串是否相等。 字符串1 != 字符串2:检查两个字符串是否不相等。 -n 字符串:检查字符串是否非空。 -z 字符串:检查字符串是否为空。 示例:
1
2
3
if [ "$name" = "Alice" ]; then
echo "姓名是Alice"
fi
3、整数比较
用于测试整数值 整数1 -eq 整数2:检查两个整数是否相等。 整数1 -ne 整数2:检查两个整数是否不相等。 整数1 -lt 整数2:检查整数1是否小于整数2。 整数1 -le 整数2:检查整数1是否小于或等于整数2。 整数1 -gt 整数2:检查整数1是否大于整数2。 整数1 -ge 整数2:检查整数1是否大于或等于整数2。 示例:
1
2
3
if [ $age -lt 18 ]; then
echo "年龄小于18岁"
fi
逻辑运算:
用于进行逻辑操作 ! 表达式:逻辑非,取反操作。 表达式1 -a 表达式2:逻辑与,当两个表达式都为真时返回真。 表达式1 -o 表达式2:逻辑或,当两个表达式中至少有一个为真时返回真。 示例:
1
2
3
if [ ! -e "file.txt" -a "$user" = "admin" ]; then
echo "文件不存在且用户是管理员"
fi
本文由作者按照 CC BY 4.0 进行授权