嗨我有一个xml文件,我需要搜索一行中的字符串(如果存在)用某些内容替换它并搜索下一个字符串并将其替换为所需的字符串。 我试过这个
while read line
do
user=`echo $LINE |grep "<?xml"`
if [ $user == "<?xml" ]; then
replace=utf-8
user=`echo $LINE|sed "s/UTF-8/${replace}/"` >> $input_file
fi
done
它只检查一个字符串并保留如何操作。
如何检查剩下的还有,并做一些检查和替换。
答案 0 :(得分:0)
我认为您的问题在g
命令末尾缺少sed
标志。
我也不确定if
条件。以下是我的例子。
while read line
do
user=`echo $line |grep "<?xml"`
if [ -n "$user" ]; then
replace="utf-8"
user=`echo $line|sed "s/UTF-8/${replace}/g"`
echo $user >> $input_file
fi
done