Hoi
ik heb wat bestandjes (voor een mail-setup op mysql, met 8x hetzelfde usertje en password).
Ik wil die bestanden met een bash-script aanpassen.... in de bron versie staat er dan dbUser.script op de plek van de nieuwe user, en dbPass.script als pass etc etc.
Ik heb het book Unix power tools van O'Reilly erbij gepakt, en daarr staat deze setup:
Dat script is bedoeld om een pad in een stel html bestanden te vervangen. Ik doe opzich precies hetzelfde:
Alleen geeft vim al meteen aan dat er bij het eerste ed commando een en ander mis gaat --> vanaf 1,\$ is de zaak rood.
Ook geeft het script de error bij:
Line 23 is dus na de lus... hij pakt ergens die rest van de lus als input voor ed mee gok ik.
Google werkte hier niet echt, en wat boeken (heb ook Learning the bash shell van O'Reilly) boden geen uitkomst.
Iemand weet wat ik fout doe? (vast wel
)
ik heb wat bestandjes (voor een mail-setup op mysql, met 8x hetzelfde usertje en password).
Ik wil die bestanden met een bash-script aanpassen.... in de bron versie staat er dan dbUser.script op de plek van de nieuwe user, en dbPass.script als pass etc etc.
Ik heb het book Unix power tools van O'Reilly erbij gepakt, en daarr staat deze setup:
code:
1
2
3
4
5
6
7
| for file in *html; do ed $file <<EOF 1,\$s/$old_graphics_dir/$new_graphics_dir./g w EOF done |
Dat script is bedoeld om een pad in een stel html bestanden te vervangen. Ik doe opzich precies hetzelfde:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| #!/bin/bash
dbUser=$1
dbPass=$2
domainNames=$3
db="mailsql"
generateMysqlFiles()
{
for file in mysql*.cf;
do
ed $file <<EOF
1,\$s/dbUser.script/$dbUser/g
1,\$s/dbPass.script/$dbPass/g
1,\$s/db.script/$db/g
w
EOF
done
}
generateMysqlFiles |
Alleen geeft vim al meteen aan dat er bij het eerste ed commando een en ander mis gaat --> vanaf 1,\$ is de zaak rood.
Ook geeft het script de error bij:
code:
1
2
| boudewijn@mail ~/mail-install $ sh installMail.sh user pass abc installMail.sh: line 23: syntax error: unexpected end of file |
Line 23 is dus na de lus... hij pakt ergens die rest van de lus als input voor ed mee gok ik.
Google werkte hier niet echt, en wat boeken (heb ook Learning the bash shell van O'Reilly) boden geen uitkomst.
Iemand weet wat ik fout doe? (vast wel