详解Linux命令中的符号
1 管道符 |
我们举个例子 A命令 | B命令
这样写A命令的结果就会作为b命令的输入
我们下面介绍几个常见的使用方式
1.1 | grep [要检索的东西]
你在终端上看到了一些内容,你感觉东西太多了,自己找很麻烦,那么就可以用这个
比如我向在当前目录下查看有没有 something.txt 这个文件,那么我可以这样写 ls | grep something.txt
要检索的东西默认区分大小写
- ps -ef | grep python 查看python的所有进程,这里不只能挂python,比如你要查看uwsgi的所有进程,你就写 ps -ef | grep uwsgi
- pip list | grep opencv 查看python库中opencv的版本情况
1.2 echo | tee

这样可以让 hello world 写入 test.txt。写入的东西会覆盖掉之前的东西

2 重定向
重定向有 > >> < << 四个符号,你别把他们当作大于号和小于号看,你把他们当作箭头来看。比如 A > B 就是把A的结果给B。再比如 A < B 就是把B的结果给A
2.1 输出重定向覆盖 >
举个例子,echo默认会把结果输出到终端上

现在我不想让结果输出在终端上了,而是输出在一个txt中,那我们可以这样写
![]()
这样我们发现终端上就不显示东西了,之后在指定的目录下会出现test.txt这个文件(如果test.txt之前存在会覆盖掉之前的内容,如果text.txt之前不存在会自动创建)


2.2 输出重定向添加 >>
如果没有test.txt那么就自动创建一个test.txt并写下相关的内容
![]()

与 > 不同的是,>>会将内容添加到最后,而不是进行覆盖
![]()

2.3 文件输入重定向 <
把后面的结果给前面的,比如我现在想找test.txt的wo的部分

那么我们可以这样写

我们再举个例子加强一下理解,我现在有两个文本文件 test.txt 与 test1.txt

test.txt的内容是这样的

test1.txt的内容是这样的

我现在想用test1.txt的内容覆盖掉test.txt的内容,我们可以这样写

test.txt的内容改变了

test1.txt的内容没有变化

2.4 多行文本输入重定向 <<
执行命令前的test.txt内容是这样的

之后执行重定向的命令,EOF是多行文本的结束标识,运行之后出现了输入多行文本的地方
一般都是用EOF作为结束标识,我们也可以用其他的字符,效果一样使用 <<- EOF 与 << EOF 相似,只是关于制表符的处理上不一样。在一些终端中<<-EOF与<<EOF作用相同
![]()
我们随便输入一些内容,然后最后以EOF结尾,然后按回车

之后打开test.txt发现之前的内容被覆盖掉了

2.5 常用搭配
2.5.1 终端不显示 > /dev/null
/dev/null 就是一个扔垃圾的地方,不想要的终端输出都可以给这个文件
![]()
这样写会保存想要的内容,并且在终端上不显示任何的东西

到此这篇关于详解Linux命令中的符号的文章就介绍到这了,更多相关Linux命令中的符号内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Linux压缩及解压缩命令tar|zip|rar|xz操作方法
不管Linux还是其他操作系统,数据的压缩和解压缩操作是经常用到的,在windows平台文件的相关操作被傻瓜化了,到了Linux平台让好多小伙伴感觉有点束手无策,本文为大家讲解Linux的常用压缩包操作,格式包含tar.gz, .tgz, .tar.bz2, .zip, .rar, .tar.xz,感兴趣的朋友一起看看吧2024-02-02
linux shell中单引号、双引号、反引号、反斜杠的区别
shell可以识别4种不同类型的引字符号: 单引号字符' 双引号字符" 反斜杠字符\ 反引号字符`的区别,学习shell编程的朋友可以看下2013-01-01
Linux在shell中自动生成1到100的数组方法(两种方法)
之前自己在写shell脚本的时候,需要自动创建1-100的文本确不知道该如何去创建。今天小编给大家分享两种方法,需要的朋友参考下2017-02-02


最新评论