查找并替换文件夹 - 一个$ file_var,带有$ var值

时间:2012-07-17 09:35:18

标签: bash shell unix

我想浏览文件夹中的所有文件,并使用我的debian 6.0安装中的bash脚本中定义的变量$ X替换文件中$ file_X的所有实例。

例如,如果文件包含$ file_dep,我希望将其替换为我的bash脚本中定义的变量$ dep的值。

以下是我的配置文件示例:

IP address = $file_dep

以下是我的bash脚本中定义的示例

$dep=192.168.0.1

这是我使用谷歌找到的最佳起点。

# Replace Config Values
cd /home/config
find . -type f -print0 | xargs -0 sed -i "s/$szAnswer1/$szAnswer2/g"

我的伪代码(我不喜欢bash)

Find $FILE_X
Replace $FILE_X with value $X

有人能为我提供更多帮助吗?

谢谢,

詹姆斯

1 个答案:

答案 0 :(得分:0)

FILE_X=old
X=new
find . -name "*$FILE_X*" -exec bash -c 'echo mv $1 ${1//'"$FILE_X"'/'"$X"'}' -- {} \;

如果输出正常则删除回声