首页 > 系统相关 >linux中的&&,|| 与 () 命令

linux中的&&,|| 与 () 命令

时间:2022-11-15 19:02:11浏览次数:59  
标签:执行 命令 facebook && linux txt root

参考:https://www.cnblogs.com/chenggang816/p/10303508.html
用&&连接两个命令,前一命令执成功(返回0)下一命令才会执行,

如 date && echo 1 会打印1,而data && echo 2不会打印2

&&、()、||决定linux命令的执行顺序

在执行某个命令时,有时需要依赖前面的命令是否执行成功。

一、&&

1.格式

command1 && command2

2.含义

&&左边的command1执行成功(返回0表示成功)后,&&右边的command2才能被执行。

3.实例

(1)当把文件sql.txt复制一份为sql.bak.txt成功,然后显示副本sql.bak.txt

[root@RHEL5 shell]# cp sql.txt sql.bak.txt && cat sql.bak.txt

Database        Size(MB)        Date Created

--------------------------------------------

GOSOUTH         2244            12/11/97

TRISUD          5632            8/9/99

(2 rows affected)

二、||

1.格式

command1 || command2

2.含义

如果||左边的command1执行失败(返回1表示失败),就执行&&右边的command2。

3.实例

(1)打印1111.txt的第一列内容,若执行不成功则执行显示facebook.txt的内容

[root@RHEL5 shell]# awk '{print $1}' 1111.txt || cat facebook.txt

awk: cmd. line:1: fatal: cannot open file `1111.txt' for reading (No such file or directory)

google 110 5000

baidu 100 5000

guge 50 3000

sohu 100 4500

(2)当打印1111.txt的第一列内容得命令被成功执行,则不执行打印facebook.txt的命令

[root@RHEL5 shell]# awk '{print $1}' facebook.txt || cat facebook.txt

google

baidu

guge

sohu

三、()

如果想执行几个命令,则需要用命令分隔符分号隔开每个命令,并使用圆括号()把所有命令组合起来。

结合||和&&可以实现复杂的功能。

1.格式(command1;command2;command3;...)

2.实例

(1)使用多个命令,如果sort命令执行成功,先将排序后的文件备份到/root/backup/目录下,然后再打印

sort facebook.txt > facebook.txt.sorted && (cp facebook.txt.sorted /root/backup/facebook.txt.sorted;lp facebook.txt.sorted)

(2)打印facebook.txt文件失败就发邮件告知root用户,并关机

lp facebook.txt.sorted ||(echo "It was not submitted succuessfully" | mail root;init 0)

参考:http://www.51testing.com/html/65/364865-222881.html

标签:执行,命令,facebook,&&,linux,txt,root
From: https://www.cnblogs.com/kuangke/p/16893526.html

相关文章

  • linux搭建NFS文件共享服务器的步骤详解
    搭建步骤1、安装nfs所需软件包yuminstallrpcbindnfs-utils2、创建测试文件并赋权限mkdir/home/testchmod-R777/home/test/cd/home/test/vimaaa/bbb.txt......
  • linux sed 命令
    sed是一个流编辑器(streameditor),主要用来执行文本替换。但sed的主要设计目的是以批处理的方式而不是交互的方式来编辑文件。命令简介基本命令格式sed[常用选项]......
  • Linux流量监控iftop
    参考:https://www.cnblogs.com/-wenli/p/14072607.htmliftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等。CentOS安装安装依赖包:yuminstall......
  • 华为欧拉OpenEuler(Linux)安装MySQL8.0
    Euler版本:openEuler-22.03-LTS-x86_64-dvd.iso1、下载MySQL下载地址:https://dev.mysql.com/downloads/mysql/下载对应的版本,其中Euler22.03对应CentOS8,CentOS8==Re......
  • Linux CentOS各版本修改yum源报错及解决
    报错1:执行 wget-O/etc/yum.repos.d/CentOS-Base.repohttps://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo   报错2:执行 wget-O/etc/yum.repos.d/Cen......
  • Linux端口是否运行,端口监听
    1.通过pid查看端口占用netstat-anp|grep80802.通过pid查看进程详情ps-ef|grep80803.显示所有进程信息ps-A显示所有进程信息,连同命令行ps-ef4.ne......
  • zookeeper四字监控命令
    什么是四字监控命令zookeeper支持某些特定的四字命令与其的交互。它们大多数是查询命令,用来获取zookeeper服务的当前状态及相关信息。用户在客户端可以通过telnet或nc向zoo......
  • Nginx常用命令
    https://blog.csdn.net/veryisjava/article/details/72917894nginx常用命令 启动:cd/usr/local/nginx/sbin./nginxnginx服务启动后默认的进程号会放在/usr/local/ng......
  • Rocky linux command-1
    在Linux下一切皆文件 everythingisfile,包括目录也是文件的一种而这些文件被分为七种类型:• -:普通文件 • d: 目录文件• b: 块设备• c: 字符设备• l:......
  • linux getsockname和getpeername使用
    getsockname和getpeername函数getsockname函数用于获取与某个套接字关联的本地协议地址 getpeername函数用于获取与某个套接字关联的外地协议地址定义如下:1.#include<sy......