新闻资讯  快讯  焦点  财经  政策  社会
互 联 网   电商  金融  数据  计算  技巧
生活百科  科技  职场  健康  法律  汽车
手机百科  知识  软件  修理  测评  微信
软件技术  应用  系统  图像  视频  经验
硬件技术  知识  技术  测评  选购  维修
网络技术  硬件  软件  设置  安全  技术
程序开发  语言  移动  数据  开源  百科
安全防护  资讯  黑客  木马  病毒  移动
站长技术  搜索  SEO  推广  媒体  移动
财经百科  股票  知识  理财  财务  金融
教育考试  育儿  小学  高考  考研  留学
您当前的位置:首页 > IT > 软件 > 操作系统 > linux

详解Linux命令中;、|、& 、&& 、 ||之间的区别

时间:2019-06-11 10:02:59  来源:  作者:

概述

在用linux命令时候,我们可以一行执行多条命令或者有条件的执行下一条命令,今天主要介绍一下linux命令分号&&和&,|和||的用法。


01

“;”分号用法

方式:command1 ; command2

用;号隔开每个命令, 每个命令按照从左到右的顺序,顺序执行, 彼此之间不关心是否失败, 所有命令都会执行。


02

“| ”管道符用法

上一条命令的输出,作为下一条命令参数

方式:command1 | command2

Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意味着第一个命令的输出会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推

利用一个管道

# rpm -qa|grep perl
详解Linux命令中;、|、& 、&& 、 ||之间的区别

 

这条命令使用一个管道符“|”建立了一个管道。管道将rpm -qa命令的输出(包括系统中所有安装的RPM包)作为grep命令的输入,从而列出带有perl字符的RPM包来。

利用多个管道

# cat /etc/passwd | grep /bin/bash | wc -l

详解Linux命令中;、|、& 、&& 、 ||之间的区别

 

这条命令使用了两个管道,利用第一个管道将cat命令(显示passwd文件的内容)的输出送给grep命令,grep命令找出含有“/bin /bash”的所有行;第二个管道将grep的输出送给wc命令,wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash


03

“&”符号用法

&放在启动参数后面表示设置此进程为后台进程

方式:command1 &

默认情况下,进程是前台进程,这时就把Shell给占据了,我们无法进行其他操作,对于那些没有交互的进程,很多时候,我们希望将其在后台启动,可以在启动参数的时候加一个'&'实现这个目的。


04

“&&”符号用法

shell 在执行某个命令的时候,会返回一个返回值,该返回值保存在 shell 变量 $? 中。当 $? == 0 时,表示执行成功;当 $? == 1 时(我认为是非0的数,返回值在0-255间),表示执行失败。

有时候,下一条命令依赖前一条命令是否执行成功。如:在成功地执行一条命令之后再执行另一条命令,或者在一条命令执行失败后再执行另一条命令等。shell 提供了 && 和 || 来实现命令执行控制的功能,shell 将根据 && 或 || 前面命令的返回值来控制其后面命令的执行。

语法格式如下:

command1 && command2 [&& command3 ...]

命令之间使用 && 连接,实现逻辑与的功能。

只有在 && 左边的命令返回真(命令返回值 $? == 0),&& 右边的命令才会被执行。

只要有一个命令返回假(命令返回值 $? == 1),后面的命令就不会被执行。


05

“||”符号用法

逻辑或的功能

语法格式如下:

command1 || command2 [|| command3 ...]

命令之间使用 || 连接,实现逻辑或的功能。

只有在 || 左边的命令返回假(命令返回值 $? == 1),|| 右边的命令才会被执行。这和 c 语言中的逻辑或语法功能相同,即实现短路逻辑或操作。

只要有一个命令返回真(命令返回值 $? == 0),后面的命令就不会被执行。 –直到返回真的地方停止执行。

举例,ping命令判断存活主机

ping -c 1 -w 1 192.168.1.1 &> /dev/null && result=0 ||result=1
if [ "$result" == 0 ];then
 echo "192.168.1.1 is UP!" 
else
 echo "192.168.2.1 is DOWN!"
fi

注意 &>要连起来写。

详解Linux命令中;、|、& 、&& 、 ||之间的区别
 


Tags:Linux   点击:()  评论:()
声明:本站部分内容来自互联网,如有任何版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
1. 直接操作设备文件描述符我们知道/dev目录下存放的是设备的文件描述符。直接往设备描述符中写入数据,将破坏整个设备,如:对于硬盘设备映射到/dev/目录下的文件描述符写入数据...【详细内容】
2019-06-14 Linux  点击:(0)  评论:(0)  加入收藏
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你...【详细内容】
2019-06-14 Linux  点击:(0)  评论:(0)  加入收藏
当我们使用top命令查看系统的资源使用情况时会看到load average,如下图所示,它表示系统在1,5,15分钟的平均工作负载。那么什么是负载(load)呢?它和CPU的利用率又有什么关系呢? l...【详细内容】
2019-06-14 Linux  点击:(1)  评论:(0)  加入收藏
对于初学者,只需要一台安装有Linux操作系统(比如Ubuntu)的PC即可,或者在windows下安装一个虚拟机软件(Vmware),虚拟一个Linux系统的主机,但是我建议还是安装真机,这样会迫使你必须在L...【详细内容】
2019-06-14 开发  点击:(2)  评论:(0)  加入收藏
周一早上刚到办公室,就听到同事说有一台服务器登陆不上了,我也没放在心上,继续边吃早点,边看币价是不是又跌了。 不一会运维的同事也到了,气喘吁吁的说:我们有台服务器被阿里云...【详细内容】
2019-06-14 入侵  点击:(3)  评论:(0)  加入收藏
在介绍直接 I/O 之前,先来介绍下直接I/O这种机制产生的原因。毕竟已经有了缓存I/O(Buffered I/O),那肯定能够像到缓存I/O有缺陷吧,就按照这个思路来。 什么是缓存 I/O (Buffered...【详细内容】
2019-06-13 Linux  点击:(9)  评论:(0)  加入收藏
文件 & 目录操作(16 个)ls● ls -a 查看所有文件,包含隐藏文件● ls -l 简写 ll,查看详细信息● ls -h 文件大小以易读的方式显示cd● cd ../ 返回上级目录● cd ~ 前往家...【详细内容】
2019-06-12 Linux  点击:(2)  评论:(0)  加入收藏
概述在用linux命令时候,我们可以一行执行多条命令或者有条件的执行下一条命令,今天主要介绍一下linux命令分号&&和&,|和||的用法。01“;”分号用法方式:command1 ; command2用;...【详细内容】
2019-06-11 Linux  点击:(1)  评论:(0)  加入收藏
有时文件副本相当于对硬盘空间的巨大浪费,并会在你想要更新文件时造成困扰。以下是用来识别这些文件的六个命令。-- Sandra Henry-stocker(作者)在最近的帖子中,我们看了 如何...【详细内容】
2019-06-11 Linux  点击:(1)  评论:(0)  加入收藏
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要...【详细内容】
2019-06-10 Linux  点击:(13)  评论:(0)  加入收藏
Linux 爱好者们分享了他们犯下的一些最大错误。-- Jen Wike Huger(作者)终身学习是明智的 —— 它可以让你的思维敏捷,让你在就业市场上更具竞争力。但是有些技能比...【详细内容】
2019-06-10 Linux  点击:(2)  评论:(0)  加入收藏
Linux中利用netstat命令查看网络状态补充:IP地址是服务器在互联网中唯一的地址标识。假设有一台阿里云服务器,我们通过IP地址可以找到它。服务器中启动了Tomcat、FTP服务...,当...【详细内容】
2019-06-06 netstat  点击:(8)  评论:(0)  加入收藏
概述 在Linux系统当中,对于可执行文件或者说是可执行命令,通常可以存放在/bin,/sbin,/usr/bin,/usr/local/bin,usr/sbin等目录,而这些目录存放的可执行命令存在哪些区别呢?或者说某...【详细内容】
2019-06-05 Linux,bin  点击:(9)  评论:(0)  加入收藏
1. Linux export命令简介Linux export命令用于设置或显示环境变量。在shell中执行程序时,shell会提供一组环境变量。export可新增,修改或删除环境变量,供后续执行的程序使用。e...【详细内容】
2019-06-05 Linux  点击:(5)  评论:(0)  加入收藏
想要使用 Linux 命令,但又不想离开 Windows ?以下是在 Windows 中运行 Linux bash 命令的几种方法。-- Abhishek Prakash(作者)如果你正在课程中正在学习 shell 脚本,那么需要使...【详细内容】
2019-06-05 Windows,Linux  点击:(7)  评论:(0)  加入收藏
在使用linux时(虚拟机),经常会发现使用一段时间后,linux时间和我的宿主机(真实机)的时间不一致,而宿主机的时间确实是internet时间,安装linux时选择的时区也是Asia/Shanghai,那么今天...【详细内容】
2019-06-05 Linux,时间  点击:(11)  评论:(0)  加入收藏
Linux挂载详解参考篇:浅谈Linux中一切皆文件1、概念Linux系统中"一切皆文件",所有文件都放置在以根目录为树根的树形目录结构中。在Linux看来,任何硬件设备也都是文件,它们各有...【详细内容】
2019-05-21 Linux  点击:(13)  评论:(0)  加入收藏
Linux是每个后端程序员必须要掌握的系统,今天小编就给你分享一篇Linux基础知识点大全,看看你知道多少?(私信我python,获得万元python大礼包!) 一、 从认识操作系统开始1.1 操作系统...【详细内容】
2019-05-20 Linux  点击:(18)  评论:(0)  加入收藏
在这篇快速指南中,你将学到如何在 Ubuntu 桌面和其他使用 GNOME 桌面的发行版中添加应用图标。-- Abhishek Prakash(作者)一个经典的桌面操作系统在“桌面屏”上总是有图标的...【详细内容】
2019-05-20 Ubuntu,,Linux  点击:(10)  评论:(0)  加入收藏
概述今天主要分享一些常见的Linux重启,查看、重启、禁用网卡以及修改IP和操作防火墙的命令,温故而知新。以下针对redhat6.8操作系统。 重启命令1、reboot2、shutdown -r now...【详细内容】
2019-05-20 Linux  点击:(8)  评论:(0)  加入收藏
推荐资讯
相关文章
栏目更新
栏目热门
'); })();