anja77777
02-09-2004, 09:52
Hallo!
Warum bringt AWK die Fehlermeldung
"awk: Line 2 (NR=3): file is binary"
bei einer Text-Datei (ich meine hier die datei1 - siehe den Aufruf unten)?
Ich rufe ein Skript test.awk auf, und zwar so:
awk -f test.awk <datei1 >>datei2
Das ganze nicht unter Linux, aber ich soll diese Skripte mit dem MKS Toolkit zum laufen bringen.
So sieht mein Skript test.awk aus:
BEGIN {rn=100000}
/Ich bin ein Muster/ {rn=NR+1}
NR==rn { print $0 }
Was hier gemacht wird, ist mir eigentlich klar (es wird zuerst die Variable rn initialisiert, danach wird nach dem Suchmuster "Ich bin ein Muster" gesucht, anschliessend die Variable rn bekommt die Nummer der Zeile nach der Zeile, wo Suchmuster gefunden wurde. Am Ende wird dann die Zeile nach der Zeile mit Suchmuster ausgegeben (in die datei2).
Für Eure Hinweise bin ich sehr dankbar.
Warum bringt AWK die Fehlermeldung
"awk: Line 2 (NR=3): file is binary"
bei einer Text-Datei (ich meine hier die datei1 - siehe den Aufruf unten)?
Ich rufe ein Skript test.awk auf, und zwar so:
awk -f test.awk <datei1 >>datei2
Das ganze nicht unter Linux, aber ich soll diese Skripte mit dem MKS Toolkit zum laufen bringen.
So sieht mein Skript test.awk aus:
BEGIN {rn=100000}
/Ich bin ein Muster/ {rn=NR+1}
NR==rn { print $0 }
Was hier gemacht wird, ist mir eigentlich klar (es wird zuerst die Variable rn initialisiert, danach wird nach dem Suchmuster "Ich bin ein Muster" gesucht, anschliessend die Variable rn bekommt die Nummer der Zeile nach der Zeile, wo Suchmuster gefunden wurde. Am Ende wird dann die Zeile nach der Zeile mit Suchmuster ausgegeben (in die datei2).
Für Eure Hinweise bin ich sehr dankbar.