加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

管道与xargs

发布时间:2020-12-14 04:35:43 所属栏目:大数据 来源:网络整理
导读:1、管道:符号‘|‘,将‘|‘前面命令的输出结果作为后面命令的输入。 ? ? ? ? ?如:ls /bin | grep ^m.这行命令就是就是将bin目录下输出结果给到grep,并且匹配以m为开头的。其中ls:代表列出所有内容,bin是存放大多数命令的文件夹,/bin是绝对目录bin,单


1、管道:符号‘|‘,将‘|‘前面命令的输出结果作为后面命令的输入。
? ? ? ? ?如:ls /bin | grep ^m.这行命令就是就是将bin目录下输出结果给到grep,并且匹配以m为开头的。其中ls:代表列出所有内容,bin是存放大多数命令的文件夹,/bin是绝对目录bin,单独的/就表示根目录了,grep是以正则的方式进行匹配,‘^‘就是在正则中以指定的内容为开头进行匹配。
2、xargs:有些命令无法接收管道参数,也就是说有些命令的结果会输入到终端,需要使用xargs来强制改变去向,这就是它的一个用处
? ? ? ?如:mkdir test》cd test/》touch 1.txt 2.pdf 3.py
? ? ? ?ls . | xargs rm
? ? ? ?其中:madir就是创建目录,cd切换目录,touch新建文件,可以多个
3、xargs其他小作用:
1》-d :指定以xx进行分割,等价于echo 11 22 33,相当于给echo传递了三个参数,分别是11、22、33。
? ? ? ?echo ‘[email?protected]@33‘ | xargs echo 输出结果为[email?protected]@33
? ? ? ?echo ‘[email?protected]@33‘ | xargs -d ‘@‘ echo 输出结果为11 22 33
2》-p:询问是否执行,这种方式可以看清楚执行命令是什么样子
? ? ? ?echo ‘[email?protected]@33‘ | xargs -p -d ‘@‘ echo
? ? ? ?输出结果为 echo 11 22 33
? ? ? ? ? ? ? ? ? ?...y 就是在询问是否执行命令echo 11 22 33,输入y确认
? ? ? ? ? ? ? ? ? ?11 22 33 就是执行出来的结果
3》 -n:把执行结果进行换行处理,后面的参数3代表每行执行的参数个数
? ? ? ?echo ‘[email?protected]@[email?protected]@[email?protected]@[email?protected]@[email?protected]‘ | xargs -d ‘@‘ -n 3 echo
? ? ? ?输出结果为: 11 22 33
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?44 55 66
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?77 88 99?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?00
4》-E:选定一个字符串,对该字符串前面的内容进行读取? ? ? ? echo ‘11 22 33‘ | xargs -E ‘33‘ echo 输出结果为:11 22? ? ? ? echo ‘11 22 33‘ | xargs -E ‘22‘ echo 输出结果为:11

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读