搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
凡人多烦事01
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
十六进制转换到十进制(java)_java十六进制转十进制
2
基于java协同过滤算法的图书推荐系统-springboot Vue源码_基于协同过滤算法的图书推荐系统
3
Springboot2.X 集成 RocketMQ_mqclientexception: code: 13 desc: the message body
4
机器学习常用模型-线性回归模型详解(简单易懂)_在机器学习算法中,线性回归模型的参数求解一般使用
5
VUE学习(十四)、TodoList案例(基于props实现组件间通信通)_vue单文件 props todolist
6
C#发起http的GET/POST请求并处理响应,及其函数封装_c# http get
7
qt qimage 获取rgb 图像转yuv教程(一)_qt rgb转yuv
8
群晖支持dts_群晖Video Station不支持dts eac3的解决方案
9
Android Studio布局模板二之Navigation Menu_android studio layout模板
10
鸿蒙手表开发连不到图片,鸿蒙应用开发之手表真机展示Hello World
当前位置:
article
> 正文
linux中xargs和管道命令的区别_linux中xargs 和grep区别
作者:凡人多烦事01 | 2024-03-09 00:49:41
赞
踩
linux中xargs 和grep区别
最近刚开始学习
linux
,在学习的过程中发现了一个问题:xargs 和 | 的区别?
在我这个初学者看来,它们俩在字面解释上看是很相似的,| 命令是把前一个命令的标准输出作为后一个命令的标准输入, xargs命令是将标准输入作为后一个命令的参数。百度了一下,发现大家说的对于我来说,理解的有点难。我结合网上的解释,说下自己的理解。
我们先从两个命令看起:
# echo '--help' | cat
# echo '--help' | xargs cat
输出结果:
--help
用法:cat [选项]... [文件]...
将[文件]或标准输入组合输出到标准输出。
-A, --show-all 等于-vET
-b, --number-nonblank 对非空输出行编号
-e 等于-vE
-E, --show-ends 在每行结束处显示"$"
-n, --number 对输出的所有行编号
-s, --squeeze-blank 不输出多行空行
-t 与-vT 等价
-T, --show-tabs 将跳格字符显示为^I
-u (被忽略)
-v, --show-nonprinting 使用^ 和M- 引用,除了LFD和 TAB 之外
--help
显示此帮助信息并退出
--version
显示版本信息并退出
如果没有指定文件,或者文件为"-",则从标准输入读取。
示例:
cat f - g 先输出f 的内容,然后输出标准输入的内容,最后输出g 的内容。
cat 将标准输入的内容复制到标准输出。
......
我们可以看到第一个命令直接打印出来了,第二个命令显示的是cat命令的帮助说明。
# echo '--help' | cat 命令很明显的把字符串 ‘--help’给直接打印出来了,而加了xargs后就相当于 # cat --help 命令,所以 # echo '--help' | xargs cat == # cat --help
我们再看两个命令:
假设在 /home 目录下有 linux目录
test.txt 内容如下:
Learning linux
test1.txt 内容如下:
learning english
现在输入两个命令:
# ls | grep 'linux'
# ls | xargs grep "linux"
结果如下:
linux
test.txt:linux
ls命令是打印出当前目录下的所有文件和目录,它的输出结果是 linux test.txt text1.txt 管道命令将这个输出交给了grep命令 ,从结果分析,管道命令交给grep的输出被当成了文本来处理的。而加了xargs后,管道命令交给grep的输出被xargs以空白符做定界符切分成很多当个的数据,并作为grep的参数来使用,就等于xargs拿到了ls的输出,并且分隔成单个的字符串,然后帮你写下了
# gerp "linux" linux
text.txt
text1.txt
目前我的理解就是管道命令交给下一个命令的输出会被当做文本被处理,而xargs是会被当做后一个命令的参数
声明:
本文内容由网友自发贡献,转载请注明出处:
【wpsshop】
推荐阅读
article
linux
c
嵌入式
工程师
笔试题,
嵌入式
软件
工程师
/
linux
c
程序员 笔试题...
一、什么叫可重入?可重入函数主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数...
赞
踩
article
linux
编译
mqtt
静态库,无法为
arm
-
none
-
linux
-
gnueabi
-g ++编译器找...
I have the
arm
-
none
-
linux
-
gnueabi
-g++ compiler in the below ...
赞
踩
article
linux
下解决
qt
项目
error
while
loading
shared
libraries: ...
linux
下运行
qt
项目,能编译通过,但不能运行出应用程序_./
qt
-
unified
-
linux
-x64-4.6.1-o...
赞
踩
article
ubuntu
在线安装qt碰到的问题及解决_./qt-
unified
-
linux
-
x64
-4.6.1-...
ubuntu
中在线安装qt碰到的问题。_./qt-
unified
-
linux
-
x64
-4.6.1-
online
.
run
:...
赞
踩
article
Ubuntu安装QT:
error
whi
le
loading
shared
libraries: l...
【代码】Ubuntu安装QT:
error
whi
le
loading
shared
libraries:
libxcb
-...
赞
踩
article
解决
dbus
-
1
.
so.3
: no
version
information available 造成...
删除错误的lib
dbus
-
1
.
so.3
快捷方式,并将正确的lib
dbus
-
1
.
so.3
.XX.X拷贝到usr/lib64...
赞
踩
article
解决问题:
libbz2
.so.1: cannot open
shared
object
file
:...
解决缺少
libbz2
.so.1文件的问题。
err
or
while
loading
shared
libraries: l...
赞
踩
article
ubuntu
Linux
安装QT_qt-
unified
-
linux
-x64-4.6.1-
online
...
ubuntu
Linux
安装QT下载开源QT
Linux
安装包地址https://www.qt.io/download-o...
赞
踩
article
Linux
Qt6
安装
教程及错误解决_
ubuntu
安装
qt6
...
在
Linux
环境,通常为Ubuntu,
安装
Qt开发环境,
安装
教程以及遇到的错误解决_
ubuntu
安装
qt6
ubuntu
...
赞
踩
article
Ubuntu
安装Qt出现
bash
: ./
qt
-
unified
-
linux
-x64-
4.6
.1-onl...
Ubuntu
安装Qt出现
bash
: ./
qt
-
unified
-
linux
-x64-
4.6
.1-
online
.
run
: 权...
赞
踩
article
linux
ubuntu安装
qt
creater,配置
qt
环境到可运行
qt
项目_./
qt
-unifie...
一、安装
qt
creater1、搜索清华源,打开路径到
qt
位置,选择第二个文件,下载下来2、打开下载路径,执行chmod ...
赞
踩
article
linux
下
C++
#
include
的
搜索
路径
问题_
linux
include
搜索
路径
...
Linux c++_
linux
include
搜索
路径
linux
include
搜索
路径
...
赞
踩
article
linux
c
之g
c
c
编译出现error:
lvalue
required
as
unary
‘&‘ ...
1、问题 今天搞epoll实现io复用的时候g
c
c
编译出现这个错误
lvalue
required
as
unary
'&...
赞
踩
article
linux
使用
gcc
提示
后缀
无效
,
linux
– Gcc
编译
“无法计算对象文件的
后缀
:无法
编译
”.....
我实际上正在阅读LFS书(7.1版)
,
我在第53页被阻止.尝试
编译
gcc
,
我尝试了以下命令:./configure --...
赞
踩
article
arm
-
linux
-
gnueabihf
-gcc 5.2编译qt4.8.5_
dialogs
/qprin...
arm
-
linux
-
gnueabihf
-gcc 5.2编译qt4.8.5_
dialogs
/
qprintdialog
_un...
赞
踩
article
linux
signal
编译
不过,
Linux
编译
中
的各种
error
处理...
LDD3
中
的第一个例程就是scull,但是在新内核上
编译
的过程那叫一个坎坷。。。在此做出总结,希望可以帮到同路人。。。一...
赞
踩
article
【
FastDFS
】小伙伴们说按照我写的方式在
CentOS
8
服务器
上搭建
FastDFS
环境总报错?_...
这下在
CentOS
8
服务器
上
安装
FastDFS
不会报错了吧!_
c
entos
安装
fastdfs4.0
.6
c
ommon
...
赞
踩
article
Linux
学习
笔记(
12
)...
acpid 否 监听精灵进程 此进程监听并分配内核中的 acpi 事件adsl 否 内部 ADSL 开关控制 只...
赞
踩
article
Linux
:修改
文件
权限...
在
Linux
系统中,权限管理是
文件
和目录安全性的核心。
文件
权限是非常重要的,它们决定了哪些用户可以读取、写入或执行
文件
。...
赞
踩
article
linux
中文
语音
合成
软件,分享|
eSpeak
:
Linux
文本
转
语音
工具
...
eSpeak
是一款
Linux
命令行
工具
,能把
文本
转换成
语音
。它是一款简洁的
语音
合成
器,用C语言编写而成,它支持英语和...
赞
踩
相关标签
linux c嵌入式工程师笔试题
linux 编译mqtt静态库
linux
qt
ubuntu
运维
开发语言
qtcreator
qt5
installer
UOS
bash
权限