Wenn es sich bei den tabellierten Zeilen um Zeilen mit Tabulatorzeichen handelt:
grep '␉' <input_file >output_file
( ␉
als wörtliches Tabulatorzeichen) oder gleichwertig
sed -n '/␉/p' <input_file >output_file
In einem bash / ksh / zsh-Skript können Sie $'\t'
für eine Registerkarte schreiben , z . B. grep $'\t'
oder sed -n $'/\t/p'
.
Wenn Sie 10 Zeilen am Anfang der Datei entfernen möchten:
tail -n +11 <input_file >output_file
(Beachten Sie +11
, dass 10 Zeilen entfernt werden sollen, da +11
dies "ab Zeile 11 beginnen" bedeutet und die Zeilen mit den Endnummern von 1 beginnen) oder
sed '1,10d' <input_file >output_file
Unter Linux können Sie die -i
Option von GNU sed nutzen , um Dateien direkt zu ändern:
sed -i -n '/\t/p' *.txt
Oder Sie können eine Shell-Schleife und temporäre Dateien verwenden:
for x in *.txt; do
tail -n +11 <"$x" >"$x.tmp"
mv "$x.tmp" "$x"
done
Oder wenn Sie die Dateien nicht ändern möchten, sondern stattdessen einen anderen Namen vergeben möchten:
for x in *.txt; do
tail -n +11 <"$x" >"${x%.txt}.data"
done
sed -i -e 1,3d yourfile
. Dies wird nichts wiedergeben, sondern lediglich die Datei direkt ändern. Wenn Sie das Ergebnis nicht an einen anderen Befehl weiterleiten müssen, ist dies einfacher.