Chinaunix
标题:
shell 带反斜杠的替换
[打印本页]
作者:
cestbonE
时间:
2017-04-20 10:39
标题:
shell 带反斜杠的替换
我想要将下面的IP地址进行替换
HOSTS=http\://127.0.0.1\:444/bb5/xmlrpc (属于文本 test.txt)
换成
HOSTS=http\://172.16.10.188\:3306/am5/xmlrpc (属于文本 key.txt)
但是由于存在 \ ,导致一直替换不成功,求大神指点一下,需要怎样替换才能替换成功
作者:
o枫叶o飘零
时间:
2017-04-20 11:27
sed 's#127.0.0.1\\:444/bb5#172.16.10.188\\:3306/am5#'
复制代码
这样?
作者:
hl791708501
时间:
2017-04-20 14:16
sed 's/127.0.0.1\\:444\/bb5/172.16.10.188\\:3306\/am5/' FILENAME
作者:
hl791708501
时间:
2017-04-20 14:18
[root@localhost ~]# cat a
HOSTS=http\://127.0.0.1\:444/bb5/xmlrpc
HOSTS=http\://172.16.10.188\:3306/am5/xmlrpc
[root@localhost ~]# sed 's/127.0.0.1\\:444\/bb5/172.16.10.188\\:3306\/am5/' a
HOSTS=http\://172.16.10.188\:3306/am5/xmlrpc
HOSTS=http\://172.16.10.188\:3306/am5/xmlrpc
复制代码
作者:
cestbonE
时间:
2017-04-20 14:40
本帖最后由 cestbonE 于 2017-04-20 18:05 编辑
如果 HOSTS=http\://127.0.0.1\:444/bb5/xmlrpc (属于文本 test.txt)
赋值给变量1,即 arr1="HOSTS=http\://127.0.0.1\:444/bb5/xmlrpc"
HOSTS=http\://172.16.10.188\:3306/am5/xmlrpc (属于文本 key.txt)
赋值给变量2,即 arr2=“HOSTS=http\://172.16.10.188\:3306/am5/xmlrpc”
再将两个变量进行替换,得怎么办, 变量1是随时可修改的一个,即可以修改它的格式来达到替换目的,但变量2格式是无法修改,需要用什么格式来实现替换呢???
求助!!!
我这边是在替换时,echo会过滤掉斜杠\,所以导致了替换失败!! 求大神指点!!!
作者:
jason680
时间:
2017-04-20 18:39
回复
5#
cestbonE
http://bbs.chinaunix.net/thread-4261616-1-1.html
两个为同一个问题,一次问完...
1. input data/file 输入数据/文件
2. procedure 程序
3. ouput data 输出数据
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2