Linux 合并grep sed和while
尝试修改svg,以便如果行中出现文件中的字符串,我将颜色更改为红色。即:Linux 合并grep sed和while,linux,bash,shell,sed,Linux,Bash,Shell,Sed,尝试修改svg,以便如果行中出现文件中的字符串,我将颜色更改为红色。即: while read -r LINE; do cat file.svg | grep ""$LINE" | sed 's/rgb(0,0,0)/rgb(1,0,0)/s; done < file.txt 读取-r行时;do cat file.svg | grep“$LINE”sed 's/rgb(0,0,0)/rgb(1,0,0)/s;完成
while read -r LINE; do cat file.svg | grep ""$LINE" | sed
's/rgb(0,0,0)/rgb(1,0,0)/s; done < file.txt
读取-r行时;do cat file.svg | grep“$LINE”sed
's/rgb(0,0,0)/rgb(1,0,0)/s;完成
它不起作用,因为输入文件是不变的-我需要像sed-I这样的东西,但我如何才能将其放入循环中?更改:
cat file.svg | grep ""$LINE" | sed 's/rgb(0,0,0)/rgb(1,0,0)/"
为此:
sed -i.bak "\~$LINE~{s~rgb(0,0,0)~rgb(1,0,0)~g;}" file.svg
这是假设$LINE
没有~
字符或任何其他正则表达式元字符