shell批量替换文件内容
今天同事发现内部服务器的硬盘空间不够了,上面有很多备份,我又不能删除,重新找了个320g的硬盘挂载了上,想以后shell脚本下的备份都转移到新硬盘上,给老硬盘腾出空间来,原备份路径是/data/onlinesqlbak/,新备份路径是/disk2/onlinesqlbak/,我find了下备份shell脚本,这一找吓死个人,最少都有10-20个备份shell要改,谁叫我是懒人想一下搞定完,好了来看我的解决办法吧.
系统:centos 5.x
1.先确认有那些脚本要改
find ~/soft_shell/ -name "*"|xargs grep "/data/onlinesqlbak/"
2.替换脚本里的内容
find ~/soft_shell/ -type f -path "*.sh"|xargs sed -i 's:/data/onlinesqlbak/:/disk2/onlinesqlbak/:g'
3.验证
find ~/soft_shell/ -name "*"|xargs grep "/disk2/onlinesqlbak/"
好了,很快的就搞定了很头大的问题.
系统:centos 5.x
1.先确认有那些脚本要改
find ~/soft_shell/ -name "*"|xargs grep "/data/onlinesqlbak/"
2.替换脚本里的内容
find ~/soft_shell/ -type f -path "*.sh"|xargs sed -i 's:/data/onlinesqlbak/:/disk2/onlinesqlbak/:g'
3.验证
find ~/soft_shell/ -name "*"|xargs grep "/disk2/onlinesqlbak/"
好了,很快的就搞定了很头大的问题.
评论: