Ik heb de volgende lijn code:
filename.output bevat het volgende:
Variable ${tgrepLine} bevat:
PATH=".:/home/root/bin/:/usr/local/bin/"
Variable ${tNewLine} bevat:
PATH="/home/user/bin/:.:/home/root/bin/:/usr/local/bin/"
Zoals je ziet bevatten het sed commando dubbele quotes en de variabele daarin ook.
Als ik het commando uitvoer: 'sed -i' krijg ik een fout.
Ik kan niet dubbele quotes binnen het 'sed' commando met dubbele quotes gebruiken...
Het commando ziet er zo uit: (let op de hoeveelheid quotes)
Het commando sluit zichzelf dus halverwege weer af. Dit wil ik voorkomen, maar wil hetgeen geschreven moet worden (dus PATH=" ) wel zo houden! Kan dat?
Thanks in advance!
code:
1
| sed -i "/MatchText/ s/${tgrepLine}/${tNewLine}/" filename.output |
filename.output bevat het volgende:
code:
1
2
3
| blablabla PATH=".:/home/root/bin/:/usr/local/bin/" blablabla |
Variable ${tgrepLine} bevat:
PATH=".:/home/root/bin/:/usr/local/bin/"
Variable ${tNewLine} bevat:
PATH="/home/user/bin/:.:/home/root/bin/:/usr/local/bin/"
Zoals je ziet bevatten het sed commando dubbele quotes en de variabele daarin ook.
Als ik het commando uitvoer: 'sed -i' krijg ik een fout.
Ik kan niet dubbele quotes binnen het 'sed' commando met dubbele quotes gebruiken...
Het commando ziet er zo uit: (let op de hoeveelheid quotes)
code:
1
| sed -i "/MatchText/ s/PATH=".:/home/root/bin/:/usr/local/bin/"/PATH="/home/user/bin/:.:/home/root/bin/:/usr/local/bin/"/" filename.output |
Het commando sluit zichzelf dus halverwege weer af. Dit wil ik voorkomen, maar wil hetgeen geschreven moet worden (dus PATH=" ) wel zo houden! Kan dat?
Thanks in advance!