Linux命令执行顺序— ||和&&和; 比较

Linux命令执行顺序— ||和&&和; 

command1 && command2: &&左边的command1执行成功(返回0表示成功)后,&&右边的command2才能被执行。
command1 || command2: 如果||左边的command1执行失败(返回1表示失败),就执行&&右边的command2。
command1;command2: 命令顺序执行 

//第一个命令执行不成功,第二个命令才执行
[tough@toughhou shell]cata||touchacat:a:Nosuchfileordirectory[tough@toughhoushell]  ls
 a  getpath.sh 

//第一个命令执行成功,第二个命令不执行
[tough@toughhou shell]cata||touchb[tough@toughhoushell]  ls
 a  getpath.sh 

//只有第一个命令(touch a)执行成功,才执行第二个命令(touch b)
 [tough@toughhou shell]touch a && touch b 
	[tough@toughhou shell] ls
 a  b  getpath.sh 

//因为第一个命令执行不成功,所以第二个命令没执行
[tough@toughhou shell]cat a1 && touch c 
	cat: a1: No such file or directory 
	[tough@toughhou shell] ls
 a  b  getpath.sh 

//命令顺序执行
[tough@toughhou shell]$ pwd;more a;date
 /home/tough/shell
 123
 Sun Oct 13 10:24:55 CST 2013 


刚才输入命令 echo "This is file content, over!" > filename 竟然会出错,提示:

bash:  !": event not found

原来字符串中的!会被解析。如果不出错的话呢,转义!就可以了,如 \!

或者把双引号改成单引号也行。

Linux命令执行顺序— ||和&&和; 比较,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。