ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Shell echo、printf、test命令

2026/8/19 18:54:18 拓冰建站 浏览量
Shell echo、printf、test命令

目录

Shell echo命令

打印文本消息

显示变量值

输出特殊字符

输出到文件

追加到文件

Shell printf 命令

打印简单文本

Shell test 命令

文件测试

字符串比较

整数比较

逻辑运算


Shell echo命令

打印文本消息

echo "Hello, World!"

显示变量值

name="Alice"
echo "My name is $name"

输出特殊字符

\t:代表制表符(Tab键)、\n:代表换行符;

echo "New\t line\n"

输出到文件

这将把 "Hello, File!" 输出到名为 output.txt 的文件中,如果文件存在则覆盖内容。

echo "Hello, File!" > output.txt

追加到文件

这将把 "More content" 追加到 output.txt 文件末尾。

echo "More content" >> output.txt

Shell printf 命令

当你使用Shell中的printf命令时,它可以帮助你格式化和输出文本。

打印简单文本

这将简单地打印字符串"Hello, World!",并在末尾添加一个换行符\n来换行。

printf "Hello, World!\n"

Shell test 命令

当你使用Shell中的test命令时,它用于测试条件是否为真(True)。test命令通常用于Shell脚本中的条件判断,以便根据条件的结果执行不同的操作。

文件测试

用于测试文件和目录的属性

-e 文件:检查文件是否存在。

-f 文件:检查文件是否是一个常规文件。

-d 文件:检查文件是否是一个目录。

-s 文件:检查文件是否不为空(即文件大小是否大于零)。

-r 文件:检查文件是否可读。

-w 文件:检查文件是否可写。

-x 文件:检查文件是否可执行。

示例:

if [ -e "myfile.txt" ]; thenecho "文件存在"
fi

字符串比较

用于测试字符串的内容

字符串1 = 字符串2:检查两个字符串是否相等。

字符串1 != 字符串2:检查两个字符串是否不相等。

-n 字符串:检查字符串是否非空。

-z 字符串:检查字符串是否为空。

示例:

if [ "$name" = "Alice" ]; thenecho "姓名是Alice"
fi

整数比较

用于测试整数值

整数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 ]; thenecho "年龄小于18岁"
fi

逻辑运算

用于进行逻辑操作

! 表达式:逻辑非,取反操作。

表达式1 -a 表达式2:逻辑与,当两个表达式都为真时返回真。

表达式1 -o 表达式2:逻辑或,当两个表达式中至少有一个为真时返回真。

示例:

if [ ! -e "file.txt" -a "$user" = "admin" ]; thenecho "文件不存在且用户是管理员"
fi