网站首页 > 技术文章 正文
简单的介绍以下两者的用法
&&:
表示前一条命令执行成功时,才执行后一条命令。
案例:
ls a.txt && echo "存在a.txt"
如果ls a.txt执行成功,即:存在a.txt
就会执行echo "存在a.txt"
ls aa.txt && echo "打印我,是不存在的"
ls aa.txt执行失败,不执行后面的打印
||:
表示前一条命令执行失败时,才执行下一条命令。
案例:
ls cc.txt || echo "不存在cc.txt才会执行我"
当ls cc.txt 执行失败才会执行打印
补充一个综合的案例:
[root@kingdom demo1]# ll
total 0
-rw-r--r-- 1 root root 0 Jan 18 16:46 a.txt
-rw-r--r-- 1 root root 0 Jan 18 16:46 b.txt
-rw-r--r-- 1 root root 0 Jan 18 16:46 c.txt
-rw-r--r-- 1 root root 0 Jan 18 16:47 file1
-rw-r--r-- 1 root root 0 Jan 18 16:47 file2
-rw-r--r-- 1 root root 0 Jan 18 16:47 file3
[root@kingdom demo1]# ls a.txt &> /dev/nul && echo "ls 执行成功" || echo "我前面的命令失败时,才执行我"
ls 执行成功
[root@kingdom demo1]# ls aa.txt &> /dev/nul && echo "ls 执行成功" || echo "我前面的命令失败时,才执行我"
我前面的命令失败时,才执行我
[root@kingdom demo1]# ls a.txt &> /dev/nul && ls aa.txt > /dev/nul || echo "我前面的命令失败时,才执行我"
ls: cannot access aa.txt: No such file or directory
我前面的命令失败时,才执行我
[root@kingdom demo1]#
补充& and |:
&:
放在命令后面表示设置此进程为后台进程。
简单的解释:
默认情况,进程为前台进程。这时进程会把Shell占据,无法进行其他操作。
对于没有交互的进程,我们希望将其在后台启动,此时在启动参数的时候加一个&可以实现这个目的。
案例:
以redis为例
./redis-server
Redis进程把Shell占据,我们只能再开一个终端。
把redis设置为后台进程
./redis-server &
查看一下进程
|:
管道,上一条命令的输出,作为下一条命令参数。
案例:
ls | grep ".txt"
简单的解释一下
ls执行输入的结果a.txt b.txt c.txt file1 file2 file3
作为grep ".txt"过滤的输入参数
测试完成
欢迎大家给予宝贵的意见或者建议。
欢迎大家补充或者共享一些其他的方法。
感谢支持。
猜你喜欢
- 2024-09-10 oracle实用sql分享:杀进程、长时间操作等等
- 2024-09-10 走在前沿的弄潮儿,怎能不会Git的那些奇技淫巧
- 2024-09-10 TCP“三次握手,四次挥手”你真的懂吗?
- 2024-09-10 制作 deb 软件包(如何制作deb包)
- 2024-09-10 详解虚拟化之KVM概念、架构、功能、常用工具及部署
- 2024-09-10 Linux find命令一定要知道这些(linux find命令的使用)
- 2024-09-10 inux 文本处理三剑客--grep/sed/awk
- 2024-09-10 db2入门必看命令清单--日常运维必需
- 2024-09-10 浅谈Linux中的&&和ll,补充&和l
- 2024-09-10 使用grep搜索多个字符串(grep命令查找多个字段)
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)