如何在终端中组合多个命令?

如何在终端中组合多个命令?

我有以下命令。

cd import
zcat urls1.sql.gz | mysql -u root -p urls
cd /var/www/project1/
nano 1.php

到目前为止,我正在逐一执行。

有没有办法将这些命令合并到一行中?

答案1

是的,用分号分隔,如下所示:

dir; ls -l

大多数语言/shell 使用分号来表示命令的结束,并在从左到右评估时开始新的命令。

或者按照@RobieBasak 建议的那样,使用 && 代替 ; 来防止编码事故。

dir && ls -l

答案2

这进一步说明:

  1. A;B – 运行 A,然后运行 ​​B,无论 A 成功与否

  2. A && B – 仅当 A 成功时才运行 B

  3. A || B – 仅当 A 失败时才运行 B

来源 :https://www.howtogeek.com/269509/how-to-run-two-or-more-terminal-commands-at-once-in-linux/

相关内容