1.|和||
此处只讨论都作为命令连接的用途,“|” 还可用于按位或,两者还可以作为逻辑或使用

true | true

true | false

false | true

false | false
“|”前的命令执行成功后才执行“|”后的命令

true || true

true || false

false || true

flase || false
“||”有短路功能,即前面的命令成功执行后不执行后面的命令,只有前面命令出错才有机会执行后面的命令
2.&和&&
此处只讨论都作为命令连接的用途,“&” 还可用于按位或,两者还可以作为逻辑或使用

true & true

true & false

false & true

false & false
“&”不影响前后命令执行

true && true

true && false

false && true

false && false
“&&”有短路功能,前面的命令执行失败后无法执行后面的命令