shell命令中;,&,&&,|,||用法及区别

在linux运维过程中时常会执行多条命令,这样我们就需要多重命令方式进行处理

;运算符

通过使用;来执行多条命令,例如:

# cd /root/home;mkdir a1d4m;cd a1d4m/

&运算符

通过使用&来执行多条命令,例如:

# cd /root/home&mkdir a1d4m&cd a1d4m/

&&运算符

有和的意思
# cd /root/home&&mkdir a1d4m

若cd /root/home执行完毕且正常执行,则执行mkdir ychack

若cd /root/home执行完毕且不正常执行,则不执行mkdir ychack

|运算符

管道符号,是unix一个很强大的功能,符号为一条竖线:"|"。

用法:

command 1 | command 2

他的功能是把第一个命令command 1执行的结果作为command2的输入传给command 2,例如:

#ls -s|sort -nr (请注意不要复制$符号进去哦)

-s 是file size,-n是numeric-sort,-r是reverse,反转

该命令列出当前目录中的文档(含size),并把输出送给sort命令作为输入,sort命令按数字递减的顺序把ls的输出排序。

||运算符

有或的意思,跟&&刚好相反

# cd /root/home&&mkdir a1d4m

若cd /root/home执行完毕且正常执行,则不执行mkdir ychack

若cd /root/home执行完毕且不正常执行,则执行mkdir ychack

区别总结

&,|是位运算,运算结果是二进制数。
&&,||是逻辑运算,运算结果是真,或者假。

原文地址:https://www.cnblogs.com/a1d4m/p/10051980.html

时间: 2024-10-03 14:02:26

shell命令中;,&,&&,|,||用法及区别的相关文章

常用shell命令中你所不熟悉的参数

1.   ls: 类似于dos下的dir命令 ls最常用的参数有三个: -a -l -F. ls –a Linux上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示一般文件名外,连隐藏文件也会显示出来. ls –l 该参数显示更详细的文件信息. ls –F 使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数.但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就

Linux shell命令中expr

在Linux shell命令中expr虽然不是很起眼,但是它的作用是非常大的!到目前为止,我个人看来最大的作用就是两个——四则运算和字符串的操作. 先说四则运算,在Shell中四则运算不能简简单单的加减乘除,应该要写如下的格式: $val1=`$val2 - 1` 其中“=”后面用“`”包住表达式,这个符号在Shell中十分有用,是Tab键上面“~”的原来形式.可以用来将很多命令的结果保存到一个变量中去.接着就是运算符了,运算符的左右两边必须是空格,否则会出错. 接着是强大的字符串操作: 提取指

【转】shell命令中>/dev/null 2>&1的实现原理

异步执行 exec("/alidata/server/php/bin/php /nas/wxdoctor/index.php App/Common/WordsPic/user_id/".$user_info['user_id']."/goods_id/".$goods_id."."/open_id/".$user_info['open_id']." > /dev/null 2>&1 &")

什么是shell,shell基础由浅入深,常用的shell命令、用法、技巧

Shell:可以批量处理.自动化完成一系列维护任务,大大减轻管理员的负担!Shell是一个特殊的应用程序,介于操作系统内核与用户之间,充当了一个"命令解释器"的角色.负责接收用户输入的操作指令,并进行解释,将需要执行的操作传递给内核执行,并输出执行结果. 如何查看系统所支持的Shell(默认为Bash): Shell脚本格式:由脚本声明.脚本注释.可执行语句构成:   Shell脚本执行方式:只要将平时使用的各种Linux命令按顺序保存到一个文本文件,然后添加可执行权限,这个文件就成为

node 命令中 & 和 && 的区别

node first.js & node second.js  执行结果: 第一次: first.js second.js 第二次: second.js first.js 第三次: first.js second.js 第N次: …… 总结: 使用 & 连接符, first.js 和 second.js 的执行顺序不确定. node first.js && node second.js  执行结果: 第一次: first.js second.js 第二次: first.js

shell 命令中变量与从定向的运用...

变量和重定向 变量和重定向应用到我们的 linux shell 脚本当中,在shell脚本当中起到关键性的作用,如果没有变量和重定向的应用我们写起脚本来就是非常困难的一件事:在我们的脚本当中无时无刻都会有他们的身影,熟练他们俩的使用方法,可使我们写脚本的效率以及效果达到事半功倍. 变量 预定义变量 $0 脚本名 $* 所有的参数 [email protected] 所有的参数 $# 参数的个数 $$ 当前进程的 PID $? 上一个命令的返回值 0表示成功 $! 上一个后台进程的PID bash

shell 命令getopts用法

写shell脚本常见sh test.sh -m 2 -d 3的写法 事例脚本: #!/bin/bash while getopts ":a:b:c:" arg #选项后面的冒号表示该选项需要参数 do echo "arg":$arg case $arg in a) echo "a's arg:$OPTARG --- $OPTIND" #参数存在$OPTARG中 ;; b) echo "b's arg:$OPTARG --- $OPTIN

shell脚本中 ${ } 和 $(( )) 的区别。${ } 限定变量边界 $(( )) 加减乘除运算

1.  ${ } 比较精确的界定变量名称的范围     用来作变量替换 例如: A=B echo $AB 原本是打算先将$A的结果替换出来,然后再补一个B字母于其后,但在命令行上,真正的结果却是只会替换变量名称为AB的值出来. 使用${ }就没问题了: echo ${A}B 得到结果 BB 2. $(( )) $(( )) 的用途:它是用来作整数运算的. 在 bash 中,$(( )) 的整数运算符号大致有这些: + - * / :分别为 "加.减.乘.除". % :余数运算 &

* 和 ?在 shell 命令行中与在正则表达式中的区别

Linux 正则表达式 你有没有想过,在 shell 命令行中的 *,?和正则表达式中的*,?是否一样? 自打好多年前接触 DOS,就知道了* 和?这两个通配符(Wildcard),象 dir *.* 这样的命令也不知道敲了多少遍. 后来,开始用 Windows 3.1 这样的图形界面操作系统,命令行就就得越来越少了. 再后来,开始学习正则表达式,又开始接触 * 和 ? 这样的东西.在正则中它们被称为元字符(Meta Character). 再再后来,开始使用 Linux,于是又开始使用命令行,