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