执行多个linux命令
执行多个linux命令详细介绍
在 Linux 中,可以通过多种方式执行多个命令,以下是常见的方法及示例:
一、单行内执行多个命令(分号
; 分隔)
用分号 ; 将多个命令分隔,按顺序执行,前一个命令的执行结果(成功 / 失败)不影响后续命令。
bash
demo_dir demo_dir file.txt
二、仅当前一个命令成功时执行下一个(逻辑与
&&)
使用 &&,前一个命令返回状态码为 0(成功)时,才会执行后续命令。
bash
update nginx
dnf update dnf httpd
三、当前一个命令失败时执行下一个(逻辑或
||)
使用 ||,前一个命令返回非 0(失败)时,执行后续命令。
bash
/non_exist_dir mkdir /non_exist_dir /non_exist_dir
四、通过管道(
|)传递数据
将前一个命令的输出作为后一个命令的输入,实现数据处理流水线。
bash
/var/log/app.log
/var
五、重定向与组合命令
结合输入输出重定向(>, >>, <)和命令组合。
bash
file_list.txt file_list.txt
input.txt output.txt
六、使用子 shell(括号
())
在子 shell 中执行多个命令,共享同一环境(如变量),但子 shell 的变量不会影响当前 shell。
bash
cd /tmp temp_files temp_files/,3.txt
七、编写 shell 脚本(推荐复杂场景)
将多个命令写入 .sh 文件,通过 bash script.sh 执行,支持变量、循环、条件判断等逻辑。
bash
+%Y%m%d
/backup/
/data/source /backup/
/backup/ d +7
八、常用命令组合示例
- 文件处理:
bashdata.tar.gz /data /data
- 系统监控:
bashsystem_monitor.log
- 网络操作:
bashhttps://example.com/file.tar.gz md5sum file.tar.gz
注意事项:
- 命令依赖:确保后续命令依赖的文件 / 环境在前序命令中正确创建。
- 错误处理:根据需求选择
;(无条件执行)、&&(成功后执行)、||(失败后执行)。 - 安全性:避免在一行命令中使用危险操作(如
rm -rf),除非确认逻辑正确。
如果需要针对具体任务(如文件批量处理、服务部署、日志分析等)设计命令组合,可以提供更多细节,我会帮你优化!