命令执行操作符
多条命令可以在一行中出现, 它们可以顺序执行, 也可能在相邻命令间存在逻辑关系,即逻辑“与”和逻辑“或”关系。
1.顺序执行
如上所述,每条命令或管道线可单独占-行。例如:
pwd
who|wC-1
cd /usr/bin
显然,这些命令按其出现顺序依次执行。也可将这些命令在一行中输入, 此时各条命令之间应以“,”隔开。例如:
pwd;who|WC-1;cd/usr/bin
在执行时,以“;”隔开的各条命令从左到右依次执行,即前面命令执行成功与否,并不影响其后命令的执行。它与上面写成多行的形式是等价的。
2.逻辑与
逻辑与操作符&&可把两个命令联系在一起,其一般形式如 下:
命令188命令2
其功能是,先执行命令1,若执行成功,则执行命令2,否则不执行命令2。例如:cp ex1 ex10 && rm ex1
若成功地把文件exI复制到文件ex10中,则把exI删除。
注意,命令执行成功时其返回值为0;若执行不成功,则返回非0值。
用&&可以把多个命令联系起来,例如:
cmd1 88 cmd2 && - && cmdn
命令不再执行,因此,后一个命令是否得以执行取决于前一个命令执行成功与否。3.逻辑或
逻辑或操作符”I”可把两个命令联系起来,其般形式如下:
命令1 II命令2
真功的量,先执行命令1.若执行不成功,则执行命令2:省命令1执行成功,则不执行命令2。例如:
cat abc II pwd
若不能将文件abe的内容列出来,则显示当前工作日录的路径。
同样,利用“I”可把多个命令联系起来。
操作符“&&”和“I”实际上可视为管道线上的条件运算符,它们的优先级相同,但都低于操作符“&”和“I”的优先级。