Linux高级玩家:在一行命令中同时执行多条命令,惊呆女同事!
在 Linux 中,同时在终端上输入多条命令的情况很常见,比如你想新建一个目录后立即进入此目录,常规操作肯定是先mkdir dir_name
,然后再cd dir_name
,这个并不是一个高级Linux玩家想要执行的步骤,作为高级玩家肯定是想一条命令解决,那么本文就会介绍几个骚操作,帮助你实现这样的效果。
让我们直接开始!
注意:本文基于的Linux发行版是CentoS。
1. 使用&&
命令
在 Linux 上使用 & 符号执行组合命令并不是什么新鲜事,您可以使用以下格式在 Linux 上组合两个或多个类似类型的命令来执行,以下命令将更新系统存储库,然后升级存储库。
yum update && sudo apt upgrade
执行以下命令新建目录,进入目录,然后再打印所在路径:
mkdir wljslmz && cd wljslmz && pwd
2.使用|| 命令
如果您是一位经验丰富的 Linux 用户,那你肯定用过竖线 (|) 符号来传递命令的输出,但是双管道 (||) 符号你用过吗?
||在Linux命令中相当于是 OR 条件,如果先前的命令失败或为假,则逻辑 OR 运算符将决定要做什么。
例如,我们可以在创建新文件夹的命令中设置逻辑或操作,浏览该文件夹并打印目录详细信息,如果 mkdir 命令失败,则命令的下一部分也会失败。
mkdir new_dir1 || cd new_dir1 || pwd
3.组合使用&&和|| 命令
在前面的方法中,我们刚刚看到在终端命令中使用双管道 (||) 和双管道 (&&) 语法,我们可以对它们进行组合使用。例如,以下命令将创建一个名为的新目录wljslmz-sub2
,并使用 Echo 命令打印“wljslmz is great”。
$ cd wljslmz-sub2 || mkdir wljslmz-sub2 && echo "wljslmz is great"
如图所示,cd wljslmz-sub2
执行的时候显示“No such file or directory”,然后紧接着就创建了该目录。
4.使用;命令
在不同的编程语言中,分号(;)符号用于结束程序中的一行,在 Linux bash 中,您可以使用分号 (;) 符号在同一个 shell 命令中添加多个命令来运行多个 Linux 命令。
以下命令将在文件系统中创建一个新文件和新目录,并将创建的新文件移动到该文件夹中:
touch wljslmz-file && mkdir wljslmz-sub3; mv wljslmz-file wljslmz-sub3/ && ls
5.组合运算符{}
组合运算符{}用于执行目录级命令,它可用于执行命令并打印输出状态,例如,创建一个目录,然后使用 Echo 命令来检查您的 Linux 机器上的目录状态。
$ [ -d wljslmz-sub4 ] || { mkdir wljslmz-sub4; echo wljslmz is great; } && ls
总结
本文介绍了五种Linux中一次执行多个命令的方法,每种方法都有相关的例子,大家可以进行参考!希望本文对您有所帮助,感谢阅读!
- 点赞
- 收藏
- 关注作者
评论(0)