Dag dames en heren,
Ik heb een probleem met sed en ik kom er niet uit. Stel ik heb het volgende simpele bash scriptje:
Stel ik voer nu in:
domein.nl
en
test
dan krijg ik bij de uitvoer het volgende te zien: test.domein.nl. Dat is goed en heb ik nodig. Alleen werkt de sed expressie niet. Deze verwijdert niet de lijn test.domein.nl uit het bestand vhosts.conf terwijl als ik:
sed '/.test.domein.nl/d' vhosts.conf >> vhosts.new.conf
invoer dat wel gebeurd. Nu kan ik wel de work-a-round oplossing gebruiken:
Maar dan moet ik dat bestand weer executable maken en weer uitvoeren in het script. Ikzelf vind het geen mooie oplossing. Het moet toch mogelijk zijn dat bash deze variabelen vervangt met de juiste woorden in de sed expressie?
Ik heb een probleem met sed en ik kom er niet uit. Stel ik heb het volgende simpele bash scriptje:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| #!/bin/bash echo "geef volledige domein:" read DOMEIN_NAAM echo "geef voorvoegels van domein: " read SUBDOMEIN_NAAM echo $SUBDOMEIN_NAAM.$DOMEIN_NAAM sed '/.$SUBDOMEIN_NAAM.$DOMEIN_NAAM/d' vhosts.conf >> vhosts.new.conf mv vhosts.conf vhosts.old rm -rf vhosts.old mv vhosts.new.conf vhosts.conf |
Stel ik voer nu in:
domein.nl
en
test
dan krijg ik bij de uitvoer het volgende te zien: test.domein.nl. Dat is goed en heb ik nodig. Alleen werkt de sed expressie niet. Deze verwijdert niet de lijn test.domein.nl uit het bestand vhosts.conf terwijl als ik:
sed '/.test.domein.nl/d' vhosts.conf >> vhosts.new.conf
invoer dat wel gebeurd. Nu kan ik wel de work-a-round oplossing gebruiken:
code:
1
| echo " sed '/.$SUBDOMEIN_NAAM.$DOMEIN_NAAM/d' vhosts.conf >> vhosts.new.conf " >> sed_expressie.sh |
Maar dan moet ik dat bestand weer executable maken en weer uitvoeren in het script. Ikzelf vind het geen mooie oplossing. Het moet toch mogelijk zijn dat bash deze variabelen vervangt met de juiste woorden in de sed expressie?
[ Voor 9% gewijzigd door Verwijderd op 12-10-2004 20:42 . Reden: Extra informatie. ]