Ik heb het volgende probleem:
ik heb een perl bestandje dat het volgende moet doen:
hij moet van een regel
het volgende maken:
nu heb ik het volgende programma:
en dit werkt prima als ik ./test.pl uitvoer en die regels invoer.
maar als ik het volgende bestandje cat naar dat programma (cat test.txt | ./test.pl), dan krijg ik volgende uitvoer:
dus die " komt vooraan de string te staan, en vervangt het eerste karakter. Het moet natuurlijk gewoon achter aan de string komen te staan, weet iemand wat ik fout doe?
ik heb een perl bestandje dat het volgende moet doen:
hij moet van een regel
code:
1
| bla=spef melp woei |
het volgende maken:
code:
1
| bla="spef melp woei" |
nu heb ik het volgende programma:
code:
1
2
3
4
5
6
| #!/usr/bin/perl
while(<>){
s/^(.*)\=(.*)$/$1\=\"$2\"/;
print;
} |
en dit werkt prima als ik ./test.pl uitvoer en die regels invoer.
maar als ik het volgende bestandje cat naar dat programma (cat test.txt | ./test.pl), dan krijg ik volgende uitvoer:
code:
1
2
3
4
5
6
7
8
| name=Blackstorm (Report Faulty Spawn) level=1 1 model=987 type=6 bounding_radius=1.000000 combat_reach=1.558700 attack=2000 2000 damage=1.010000 1.010000 |
code:
1
2
3
4
5
6
7
8
| "ame="Blackstorm (Report Faulty Spawn) "evel="1 1 "odel="987 "ype="6 "ounding_radius="1.000000 "ombat_reach="1.558700 "ttack="2000 2000 "amage="1.010000 1.010000 |
dus die " komt vooraan de string te staan, en vervangt het eerste karakter. Het moet natuurlijk gewoon achter aan de string komen te staan, weet iemand wat ik fout doe?