PYTHON 解析文件并递归替换参数
PYTHON parse file and substitute parameters recursively
如何在 Python 2.7 中执行此操作:
我有一个文件名为 e.g. parameter-values.txt 其中包含 10 个或更多具有必要值的参数,如下所示:
param1=hello,dd
param2=test
param3=4g
等等
我还有很多文件定义了这个变量(但不是每个文件中的所有参数)。
文件 1:
#!/bin/bash
param1="&*"
param3="&*"
another bash commands
所以,我的问题是:如何在循环中递归查找包含此 parameters/variables 的文件,并在参数文件中用我自己的参数替换这些文件中的参数。
感谢每一个相关的回答。
解决方案:
item_arr=(test= param2= paramX=)
new_param_arr=(test=\"hello\" param2=\"WWW\" paramX=\"XXX\")
var=0
for oldstring in "${item_arr[@]}"
do
grep -rl $oldstring | xargs sed -i "s/.*$oldstring.*/${new_param_arr[$var]}/g"
#echo -e "$oldstring\e[92m"
echo -e "${new_param_arr[$var]}\e[92m"
var=$((var+1))
done
我认为这是最好和最简单的解决方案 hwhich 工作正常
如何在 Python 2.7 中执行此操作:
我有一个文件名为 e.g. parameter-values.txt 其中包含 10 个或更多具有必要值的参数,如下所示:
param1=hello,dd
param2=test
param3=4g
等等
我还有很多文件定义了这个变量(但不是每个文件中的所有参数)。
文件 1:
#!/bin/bash
param1="&*"
param3="&*"
another bash commands
所以,我的问题是:如何在循环中递归查找包含此 parameters/variables 的文件,并在参数文件中用我自己的参数替换这些文件中的参数。
感谢每一个相关的回答。
解决方案:
item_arr=(test= param2= paramX=)
new_param_arr=(test=\"hello\" param2=\"WWW\" paramX=\"XXX\")
var=0
for oldstring in "${item_arr[@]}"
do
grep -rl $oldstring | xargs sed -i "s/.*$oldstring.*/${new_param_arr[$var]}/g"
#echo -e "$oldstring\e[92m"
echo -e "${new_param_arr[$var]}\e[92m"
var=$((var+1))
done
我认为这是最好和最简单的解决方案 hwhich 工作正常