24小时热门版块排行榜    

查看: 400  |  回复: 3

truelk

木虫 (小有名气)

[求助] linux批量替换

我有一批文件,需要把里面的/home/test/...替换掉,网上查到的方法最多的就是:sed -i "s/oldString/newString/g"  `grep oldString -rl /path`但是根本不管用,用sed可以替换单个文件常见字符串,但是像“/home/test/...”开头有"/"就不行,批量就更不行了。其他的比如find -name 'pom.xml' | xargs perl -pi -e 's|http://repo1.maven.org/maven2|ht ... 8081/nexus/content/
也不行,求linux大师指导下。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

一次次跌倒了,爬起来,站得更高
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (初入文坛)

★ ★
感谢参与,应助指数 +1
truelk: 金币+2, 有帮助, 不行啊,Substitution replacement not terminated at -e line 1 2012-12-26 20:48:15
本帖仅楼主可见
2楼2012-12-26 20:29:10
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

truelk

木虫 (小有名气)

引用回帖:
2楼: Originally posted by tcunlin at 2012-12-26 20:29:10
在这批文件的同级目录下执行如下命令,可实现批量替换.
find . -type f | xargs perl -pi -e 's/\/home\/test\//string/g'

我的文件后缀是hypoedit,假如想把/home/test替换成/prog/acc,应该怎么输入?
一次次跌倒了,爬起来,站得更高
3楼2012-12-26 20:51:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (初入文坛)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
truelk: 金币+18, ★★★★★最佳答案, 哥们,太感谢了 2012-12-26 21:08:19
本帖仅楼主可见
4楼2012-12-26 20:58:59
已阅   申请程序强帖   回复此楼   编辑   查看我的主页
相关版块跳转 我要订阅楼主 truelk 的主题更新
信息提示
请填处理意见