LInux 管道,如何把第一个命令打印出来的结果的第一行传递给第二条命令

1、sed-n'/10.10.10.22210.10.0.1:PSK"abcdefgh"/='filename2、sed'$0d'filename只能通过脚本来分步进行了... 1、sed -n '/10.10.10.222 10.10.0.1 : PSK "abcdefgh"/=' filename
2、sed '$0d' filename
只能通过脚本来分步进行了,谢谢各位
展开
 我来答
symoursx
2012-09-27 · TA获得超过573个赞
知道小有建树答主
回答量:587
采纳率:0%
帮助的人:238万
展开全部
你想删除查找结果的行吧,
那不用两个命令,
可以直接删除匹配尺乱关键字的行
sed -n '/关键字/d' filename

也可以在查陵丛档找之后加上替换命令,替换郑老的字符串为空就可以实现删除
sed -n '/查询字符串/p' filename | sed 's/要删除的字符串/空/g'

关键字,查询字符串和要删除字符串可以用正则表达式。

如果非要用传递的话,写个shell script
#!/bin/sh
MyLine='sed -n '/10.10.10.222 10.10.0.1 : PSK "abcdefgh"/=' filename'
然后把 &MyLine 传给下一条命令就行了
sed '/&MyLine/d' filename
更多追问追答
追问
现在问题是,MyLine传不进去。。 sed '/&MyLine/d' filename命令里的&MyLine的值没有传进去
追答
中间加一个 echo &MyLine 看一下结果
ywb148122362
2012-09-27 · 超过47用户采纳过TA的回答
知道答主
回答量:221
采纳率:0%
帮助的人:161万
展开全部
sed -n '/10.10.10.222 10.10.0.1 : PSK "abcdefgh"/=' filename | head -1 | xargs sed '蚂正$0d'
没测试,闷敬悔大概是这稿高个思路。
追问
思路差不多,但是实际结果却不对
追答
关键你第一条里的结果不是文件名。。明白 实在不行你可以先把他输入到一个文件里
sed -n '/10.10.10.222 10.10.0.1 : PSK "abcdefgh"/=' filename | head -1 > 1.txt ; sed '$0d' 1.txt
看看这样对不对。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
垢朋有
2012-09-27 · TA获得超过202个赞
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:186万
展开全部
sed -n '念乱/烂桥10.10.10.222 10.10.0.1 : PSK "饥高猛abcdefgh"/=' filename | xargs filename
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhanzc1
2012-09-27 · 超过60用户采纳过TA的回答
知道小有建树答主
回答量:97
采纳率:0%
帮助的人:80.9万
展开全部
command1 | head -1 | command2
是这个?
追问
思路差不多,但是实际结果却不对
追答
tmp=$(command1|head -1 )
command2 $tmp

是要把输出当命令行的输入? 如果不是完整的一行.还得进行些别的操作啥地.
你问得也不是特别清楚阿.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式