Am 2004-10-24 15:28:01, schrieb Matthias Houdek: > Am Sonntag, 24. Oktober 2004 13:41 schrieb Andreas Pakulat: > > On 24.Oct 2004 - 10:49:20, Matthias Houdek wrote: > > > cd <dir>; for datei in * ; do tail +2 "$datei" | cat - > "$datei"; > > > done > > > > Hast du das getestet? Das klappt naemlich nicht. Dabei wird eine leere > > Datei erzeugt! > > Klappt bei mir wunderbar. Hab's gerade noch mal in die Kommandozeile > kopiert - und es klappte wieder. > Natürlich habe ich nur Text-Dateien in <dir>, aber die auch mit abartigen > Dateinamen. Klappt trotzdem. Also das tail +2 "$datei" | cat - > "$datei" funktioniert nicht. Du kannst nicht aus einer Datei lesen und gleichzeitig hineinschreiben. bei mir wird die Datei getrashed. > # ... folgendes: > # 'tail +2 <dateiname>' schreibt die Datei <dateiname> ab der 2. Zeile in > # die Standardausgabe. Die Variable $datei wurde dabei in " gesetzt, um > # auch Dateinamen mit Leerzeichen zu erfassen. > # Die Standardausgabe wird mittels Pipe ( | ) in die Standardeingabe des > # cat-Befehls weitergeleitet. Mittels "-" liest cat aus der > # Standardeingabe und schreibt das ankommende in die Datei in $datei. > > tail +2 "$datei" | cat - > "$datei" Das war wohl nichts. tail +2 "$datei" >"$datei.tmp" ; mv "$datei.tmp" "$datei" funktioniert. Greetings Michelle -- Linux-User #280138 with the Linux Counter, http://counter.li.org/ Michelle Konzack Apt. 917 ICQ #328449886 50, rue de Soultz MSM LinuxMichi 0033/3/88452356 67100 Strasbourg/France IRC #Debian (irc.icq.com)
Attachment:
signature.pgp
Description: Digital signature