Linux中&和&&和管道符|和逻辑运算符||及分号;的用法

在Linux中,我们经常会用到&、&&、|、||及分号(;),但是好多人对其会混淆,不明白其中的意思,今天为大家讲解一下&、&&、|、||及分号(;)各自的说明和用法。

一、&

&:表示程序在后台运行

例如:后台运行jar包

[root@localhost ~]# java -jar gateway.jar &

[2] 34637

二、&&

&&:逻辑“与”,表示前面命令执行成功时,才执行后面命令;如果前面命令执行失败,后面的命令不再执行。

例如:

# 前面命令执行成功时,才执行后面命令

[root@localhost ~]# ls -l && echo “Success”

total 194644

-rw——-. 1 root root      1260 Sep  6 23:29 anaconda-ks.cfg

-rw-r–r–  1 root root  81751231 Oct  8 10:20 gateway.jar

-rw-r–r–  1 root root 117557932 Jul  6 15:14 jdk-8u351-linux-x64.rpm

Success

# 前面命令执行失败时,不再执行后面命令

[root@localhost ~]# ls -l test.txt && echo “Failed”

ls: cannot access test.txt: No such file or directory

三、|

|:管道符,表示上一条命令的输出,作为下一条命令参数进行传递。

例如:

[root@localhost ~]# echo “ok” |wc -l

1

四、||

||:逻辑“或”,表示前面命令执行成功时,后面命令不再执行;如果前面命令执行失败,后面的命令再执行。

例如:

# 前面命令执行成功时,不再执行后面命令

[root@localhost ~]# ls -l 123.txt || echo “Success”

-rw-r–r– 1 root root 3 Nov 15 13:57 123.txt

# 前面命令执行失败时,才执行后面命令

[root@localhost ~]# ls -l test.txt || echo “Failed”

ls: cannot access test.txt: No such file or directory

Failed

五、;

;:(英文分号;)表示每个命令按照从左到右的顺序来执行,每个命令彼此之间无任何关联,所有命令都会执行。

例如:

[root@localhost ~]# ls -l 123.txt;echo “Success”

-rw-r–r– 1 root root 3 Nov 15 13:57 123.txt

Success

原创文章,作者:admin,如若转载,请注明出处:https://hostingchat.cn/5052.html

(0)
admin的头像admin
上一篇 2023年11月13日 上午12:00
下一篇 2023年11月16日 上午12:00

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

QQ
分享本页
返回顶部