乐趣区

关于linux:让Linux终端同时运行多个Linux命令

在一行中运行两个或多个命令能够节俭大量工夫,并在 Linux 中提高效率。在 Linux 中,有三种办法能够在一行中运行多个命令:
应用 ; 符号运行多条命令

其中最简略的是分号(;),应用形式如下:

cmd1; cmd2; cmd3

cmd1 将首先运行,不论 cmd1 运行胜利还是呈现谬误,cmd2 都会在它之后运行,当 cmd2 命令实现时,cmd3 将会运行。

[root@localhost ~]# mkdir /root/new_folder; cd /root/new_folder; touch test_file; pwd ; ls -l
/root/new_folder
total 0
-rw-r–r–. 1 root root 0 Sep 2 22:01 test_file
[root@localhost new_folder]#

在下面命令汇总,首先 mkdir 创立了一个文件夹在 /root 目录中,cd 进入后面创立的目录,touch 创立一个空文件,而后 pwd 显示以后地位,ls - l 查看目录中的文件。

分号 (;) 前面的空格可带可不带,但空格使命令行更容易读懂。

应用 && 符号运行多条命令

有时候心愿确保 Linux 命令中,只有在前一个命令胜利完结时,下一个命令才会运行。这就是逻辑和运算符 && 呈现的中央:
`
cmd1 && cmd2 && cmd3
`
如果你应用基于 Centos 的发行版,你肯定遇到过这个应用 && 概念的命令:

[root@localhost ~]# yum makecache && yum -y update

命令行汇总的前半部分时更新缓存,后半局部更新所有安装包。
举个例子,如果 new_folder 曾经存在,那么 mkdir 命令将返回谬误。; 和 && 的差别能够在上面的截图中看到:

当第一个命令呈现谬误时,&&分隔的命令会进行执行前面的命令。

应用 || 符号运行多条命令

能够应用逻辑操作符 (||) 运行命令行,然而只有在前一个命令呈现谬误时才运行下一个命令:

cmd1 || cmd2 || cmd3

如果 cmd1 运行失败,则运行 cmd2。如果 cmd2 运行胜利,cmd3 将不会运行。

在下面的截图中,创立文件夹的命令失败,因为该文件夹曾经存在。因为这个命令失败了,所以下一个命令 cd /root/new_folder 被胜利执行。这个命令曾经胜利运行,下一个命令 pwd 将不运行。

合并 && 和 || 运算符

例如,能够查看文件是否存在,并相应地打印消息。

[root@localhost ~]# [-f file.txt] && echo “File exists” || echo “File doesn’t exist”

在创立 file.txt 文件之前和之后运行下面的命令,看看区别:

总结

在一行中运行两个或多个命令能够节俭大量工夫,并在 Linux 中提高效率。

退出移动版