shell学习系列(五). &&, ||
时间:2007-08-04 来源:scutan
在执行某个命令时,有时需要依赖于前一个命令是否执行成功.例如,如果希望将一个目录中的文件全部拷贝到另外一个目录中,然后删除源目录中的全部文件.在删除之前,希望能够确信拷贝成功.否则就有可能丢失所有的文件.
1.使用&&
使用&&的一般形式为:
命令1 && 命令2
这种命令执行方式相当地直接,&&左边的命令返回真后,&&右边的命令才能够被执行.
2.使用||
使用||的一般形式为:
命令1 || 命令2
||的作用有一些不同.如果||左边的命令末执行成功,那么就执行||右边的命令.
3.用()和{}将命令结合在一起
如果希望把几个命令合在一起执行,shell提供了两种方法,既可以在当前shell也可以在子shell中执行一组命令.
为了在当前shell中执行一组命令,可以用命令分隔符隔开每一个命令,并把所有的命令用圆括号括起来.它的一般形式为:
(命令1;命令2;...)
如果使用{}来代替(),那么相应的命令将在子shell而不是当前shell中作为一个整体被执行,只有在{}中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子shell中,否则在当前shell执行.它的一般形式为:
{命令1;命令2;...}
1.使用&&
使用&&的一般形式为:
命令1 && 命令2
这种命令执行方式相当地直接,&&左边的命令返回真后,&&右边的命令才能够被执行.
2.使用||
使用||的一般形式为:
命令1 || 命令2
||的作用有一些不同.如果||左边的命令末执行成功,那么就执行||右边的命令.
3.用()和{}将命令结合在一起
如果希望把几个命令合在一起执行,shell提供了两种方法,既可以在当前shell也可以在子shell中执行一组命令.
为了在当前shell中执行一组命令,可以用命令分隔符隔开每一个命令,并把所有的命令用圆括号括起来.它的一般形式为:
(命令1;命令2;...)
如果使用{}来代替(),那么相应的命令将在子shell而不是当前shell中作为一个整体被执行,只有在{}中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子shell中,否则在当前shell执行.它的一般形式为:
{命令1;命令2;...}
相关阅读 更多 +