导航

linux shell中的&& || 和()

Posted on 2016-09-19 12:33  Fundyqds  阅读(1103)  评论(0编辑  收藏  举报

1. linux命令返回值介绍

  shell 在执行某个命令时,会有一个返回值,该值保存在shell变量$?中。当$?为0时,表示命令执行成功;当$?为1时,表示命令执行失败。

2. &&

  语法格式如下:

    command1 && command2 &&...

  • command之间用&&连接,实现逻辑与功能
  • 当&&左边的命令执行成功(command的返回值$?=0)时,&&右边的command才会被执行。
  • 只要有一个command执行不成功(command返回值$?=1)时,后面的command就不会被执行

3. ||

  语法格式如下:

    command1 || command2 || .....

  • command 之间使用||链接,实现逻辑或功能
  • 当||左边的command执行不成功(command的返回值$?=1)时,||右边的command才会被执行。
  • 只要有一个command执行成功(command的返回值$?=0)时,后面的command就不会被执行。

4 ()

  语法格式如下:

    (command1;command2;.....)

  • 一个command需要独占一个物理行,如果需要将多个comand放在同一行,命令之间需要使用命令分隔符(;)分隔。执行的效果等同于多个独立的命令单独执行。
  • ()表示在当前的shell中将多个command作为一个整体执行。注:command组合都是在当前工作目录下被执行的,尽管command中有切换目录的command。
  • command组合常与命令执行控制(&&或||)结合使用。