Linux常见命令 10 – ; # $ | \ {} 和 逻辑操作符&& !

导读:本篇文章讲解 Linux常见命令 10 – ; # $ | \ {} 和 逻辑操作符&& !,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1. 常见符号

符号 解释
; 命令分隔符,或配置文件注释符
# 注释符号
| 管道符,传递命令结束给下一个命令
$ 取出变量的值
\ 转义符:\n \r \t
{} 生成序列 ,或快速备份文件

 示例:

; 命令的分隔符。即 又执行pwd命令,又执行ls命令

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# pwd; ls
/mnt/share_disk/wmq/test
out.txt  test.py

 |  管道符,传递命令结束给下一个命令

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls
out.txt  test.py
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls | grep txt
out.txt

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ps -aux | grep bash

$:取出变量的值

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# name="hello world"
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# echo $name
hello world

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

 {}:生成序列   如:touch {a..d}.txt  /  touch {1,2,3,4}.txt。其中也可以 touch {1..100..2}.txt,表示生成1-100的txt文件,步长为2

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# touch {a..d}.txt
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls
a.txt  b.txt  c.txt  d.txt

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# touch {1,2,3,4}.txt
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls
1.txt  2.txt  3.txt  4.txt

 {}:快速备份文件,如果前面的路径一样,那可以直接用{}

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# cat 1.txt
hello world
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# cp /mnt/share_disk/wmq/test/{1.txt,1_backup.txt}
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# cat 1_backup.txt
hello world

2. 逻辑操作符

符号 含义
cmd1 && cmd2 cmd1 正确,才执行cmd2。cmd1错误,不执行cmd2
cmd1 || cmd2 cmd1 正确,不执行cmd2。cmd1错误,才执行cmd2
! cmd 对cmd命令进行取反操作 或 找出历史命令

示例:

逻辑与 &&

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls && pwd
1.txt  2.txt  3.txt  4.txt  a.txt  b.txt  c.txt  d.txt
/mnt/share_disk/wmq/test

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls hhh && pwd
ls: cannot access 'hhh': No such file or directory

逻辑或:||

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls || pwd
1.txt  2.txt  3.txt  4.txt  a.txt  b.txt  c.txt  d.txt


root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls hhh || pwd
ls: cannot access 'hhh': No such file or directory
/mnt/share_disk/wmq/test

!取反:

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# ls [!a-d].txt
1.txt  2.txt  3.txt  4.txt

!+ 行号:执行具体的历史命令。首先使用history命令列出所有行号

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# !1978
pwd
/mnt/share_disk/wmq/test

!! 执行上一次敲打的命令:

root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# pwd
/mnt/share_disk/wmq/test
root@LUCAS-DEV-23557e:/mnt/share_disk/wmq/test# !!
pwd
/mnt/share_disk/wmq/test

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/87457.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!