0

我想扫描文件夹中的所有文件,并将文件中的所有 $file_X 实例替换为在我的 debian 6.0 安装中的 bash 脚本中定义的变量 $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

谁能给我更多的帮助?

谢谢,

詹姆士

4

1 回答 1

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

如果输出正常,则删除回声

于 2012-07-17T10:55:31.350 回答