
cat - 查看文件内容
cat 命令用于显示文件内容。
-s: 压缩连续的多个空白行为一个空白行。-T: 将制表符(Tab)显示为^I。-n: 显示所有行号。-b: 显示行号,但空白行不计入。
open (macOS) - 打开文件
在 macOS 中,open 命令用于打开文件、目录或 URL。
open -a TextEdit settings.xml: 使用指定的应用程序(TextEdit)打开文件。open -e settings.xml: 使用 TextEdit 编辑器打开文件(-e是-a TextEdit的简写)。open -t settings.xml: 使用默认的文本编辑器打开文件。
Shell 控制操作符
; (分号) - 命令分隔符
用法: command1 ; command2
- 按顺序执行命令,无论前一个命令是否成功,后一个命令都会继续执行。
| (管道符) - 重定向输出
用法: command1 | command2
- 将
command1的标准输出(stdout)作为command2的标准输入(stdin)。这是实现命令组合的强大工具。
& (与号) - 后台执行
用法: command1 &
- 将命令置于后台执行,这样 Shell 不会等待该命令结束,可以立即接收新的命令。
&& (逻辑与) - 条件执行
用法: command1 && command2
- 只有当
command1成功执行(退出码为 0)时,command2才会执行。这常用于需要前置条件的操作。
Shell 在执行命令后会返回一个退出码,存储在变量
$?中。0代表成功,非0代表失败。
|| (逻辑或) - 条件执行
用法: command1 || command2
- 只有当
command1执行失败(退出码非 0)时,command2才会执行。这常用于实现失败回退操作。
示例: 使用 ping 和逻辑操作符判断主机存活状态。
shell
# ping 主机,将标准输出和错误输出都重定向到 /dev/null
<NolebasePageProperties />
# 如果 ping 成功 (result=0),则执行 result=0
# 如果 ping 失败 (result=1),则执行 result=1
ping -c 1 -w 1 192.168.1.1 &> /dev/null && result=0 || result=1
if [ "$result" -eq 0 ]; then
echo "192.168.1.1 is UP!"
else
echo "192.168.1.1 is DOWN!"
firm - 删除文件或目录
rm 命令用于永久性地删除文件或目录。这是一个危险的命令,请谨慎使用。
基本格式: rm [选项] 文件或目录
-f(--force): 强制删除,不进行任何提示。-i(--interactive): 交互模式,在删除前逐一询问确认。-r(--recursive): 递归删除,用于删除目录及其包含的所有内容。
常用组合: rm -rf <directory>
-rf结合使用表示“递归地、强制地”删除一个目录,不会有任何提示,非常危险。