标题: [问题求助] 求助 linux 下 sed 替换内容为uudigen随机数 [打印本页]
作者: ritech 时间: 2012-4-28 03:16 标题: 求助 linux 下 sed 替换内容为uudigen随机数
sed 's/kxid/$(uuidgen &)/g;s/.*/echo &/e' filename
filename文件内容如下
<1> kxid <string>
<1> store .......
<2> kxid <string>
......
上面的模式,要求kxid每次被替换的uuidgen不同,上面的命令可以实现普通文件,但是如果有符号 例如< > 就报错了,求高手指点
作者: gawk 时间: 2012-4-28 03:43
什么地方有符号会报错?
请把你的执行过程和报错信息贴出来
作者: ritech 时间: 2012-4-28 18:22
假设一个文件333 内容如下
<123>
<123>kxid<123>
<123>kxid<123>
kxid
我shell的命令是
[root@www tmp]# sed 's/kxid/$(uuidgen &)/g;s/.*/echo &/e' 333
sh: -c: line 0: syntax error near unexpected token `123'
sh: -c: line 0: `echo <123>'
sh: -c: line 0: syntax error near unexpected token `123'
sh: -c: line 0: `echo <123>$(uuidgen kxid)<123>'
sh: -c: line 0: syntax error near unexpected token `123'
sh: -c: line 0: `echo <123>$(uuidgen kxid)<123>'
53fcb936-fe7e-4b9f-a914-e7949bcbd329
最终发现,有<>的行全部都出错
作者: gawk 时间: 2012-4-28 18:58
回复 3# ritech - sed 's/kxid/$(uuidgen &)/g;s/.*/echo "&"/e' 333
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |