zoukankan      html  css  js  c++  java
  • 让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终端同时运行多个Linux命令如何在Linux终端同时运行多个Linux命令
    分号(;)后面的空格可带可不带,但空格使命令行更容易读懂。

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

    有时候希望确保Linux命令中,只有在前一个命令成功结束时,下一个命令才会运行。这就是逻辑和运算符&&出现的地方:

    cmd1 && cmd2 && cmd3

    如果你使用基于Centos的发行版,你一定遇到过这个使用&&概念的命令:

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

    命令行汇总的前半部分时更新缓存,后半部分更新所有安装包。
    举个例子,如果new_folder已经存在,那么mkdir命令将返回错误。; 和&& 的差异可以在下面的截图中看到:
    如何在Linux终端同时运行多个Linux命令如何在Linux终端同时运行多个Linux命令
    当第一个命令出现错误时,&&分隔的命令会停止执行后面的命令。

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

    可以使用逻辑操作符(||)运行命令行,但是只有在前一个命令出现错误时才运行下一个命令:

    cmd1 || cmd2 || cmd3
    

    如果cmd1运行失败,则运行cmd2。如果cmd2运行成功,cmd3将不会运行。
    如何在Linux终端同时运行多个Linux命令如何在Linux终端同时运行多个Linux命令
    在上面的截图中,创建文件夹的命令失败,因为该文件夹已经存在。因为这个命令失败了,所以下一个命令cd /root/new_folder被成功执行。这个命令已经成功运行,下一个命令pwd将不运行。

    合并&&和||运算符

    例如,可以检查文件是否存在,并相应地打印消息。

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

    在创建file.txt文件之前和之后运行上面的命令,看看区别:
    如何在Linux终端同时运行多个Linux命令如何在Linux终端同时运行多个Linux命令

    总结

    在一行中运行两个或多个命令可以节省大量时间,并在Linux中提高效率。

  • 相关阅读:
    软件工程实践2017结对项目——第一次作业
    软件工程实践2017第二次作业
    软件工程实践2017第一次作业
    [LeetCode] 72. Edit Distance(最短编辑距离)
    [LeetCode] 342. Power of Four(位操作)
    [LeetCode] 477. Total Hamming Distance(位操作)
    [LeetCode] 421. Maximum XOR of Two Numbers in an Array(位操作)
    [LeetCode] 260. Single Number III(位操作)
    [LeetCode] 137. Single Number II (位操作)
    IntelliJ IDEA快捷键
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/14277645.html
Copyright © 2011-2022 走看看