免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1917 | 回复: 2
打印 上一主题 下一主题

求完整shell 语句,并执行 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-08 22:09 |显示全部楼层 |倒序浏览
a.txt
222.83.128.0/17
222.84.0.0/16
222.85.0.0/17
222.85.128.0/17
222.86.0.0/15
222.88.0.0/15

b.txt
222.174.245.2

求循环输出成下列格式
ip route add 222.83.128.0/17 via 222.174.245.2
ip route add 222.84.0.0/16 via 222.174.245.2
ip route add 222.85.0.0/17 via 222.174.245.2
ip route add 222.85.128.0/17 via 222.174.245.2
ip route add 222.86.0.0/15 via 222.174.245.2
ip route add 222.88.0.0/15 via 222.174.245.2

justlooks大哥  和nomyself 大哥给的代码都可以输出,

sed -r '1{h;d};G;s/(.*)\n(.*)/ip route add \1 via \2 /;' <(cat b.txt a.txt)

cat a.txt | xargs -n 1 -i{} echo ip route add {} via `cat b.txt`

怎样设计成脚本执行呀?不用把输出变成文件
我自己的办法是先输出成文件

sed -r '1{h;d};G;s/(.*)\n(.*)/ip route add \1 via \2 /;' <(cat b a) >test
sh test

有没更简单的方法?写成shell怎样写

论坛徽章:
0
2 [报告]
发表于 2009-05-08 22:39 |显示全部楼层

回复 #2 kwokcn 的帖子

用什么解释器呢?

写成文件mvvvv
sed -r '1{h;d};G;s/(.*)\n(.*)/ip route add \1 via \2 /;' <(cat b a) | sh -


[root@sdfsf test]# vi mvvvv
[root@sdfsf test]# sh mvvvv
mvvvv: line 1: syntax error near unexpected token `('
mvvvv: line 1: `sed -r '1{h;d};G;s/(.*)\n(.*)/ip route add \1 via \2 /;' <(cat b a) | sh -'

论坛徽章:
0
3 [报告]
发表于 2009-05-08 22:50 |显示全部楼层

回复 #4 kwokcn 的帖子

好像是转义输出的问题
是这样吗
我存储了也不行

你自己存储成shell 执行下看看

[ 本帖最后由 razar 于 2009-5-8 22:54 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP