Si las líneas tabuladas son las que tienen un carácter de tabulación:
grep '␉' <input_file >output_file
( ␉
siendo un carácter de tabulación literal) o equivalente
sed -n '/␉/p' <input_file >output_file
En un script bash / ksh / zsh, puede escribir $'\t'
para una pestaña, por ejemplo, grep $'\t'
o sed -n $'/\t/p'
.
Si desea eliminar 10 líneas al comienzo del archivo:
tail -n +11 <input_file >output_file
(tenga en cuenta que es +11
para eliminar 10 líneas, porque +11
significa "comenzar desde la línea 11" y las líneas de números de cola desde 1) o
sed '1,10d' <input_file >output_file
En Linux, puede aprovechar la -i
opción de GNU sed para modificar los archivos en su lugar:
sed -i -n '/\t/p' *.txt
O puede usar un bucle de shell y archivos temporales:
for x in *.txt; do
tail -n +11 <"$x" >"$x.tmp"
mv "$x.tmp" "$x"
done
O si no desea modificar los archivos en su lugar, sino que les da un nombre diferente:
for x in *.txt; do
tail -n +11 <"$x" >"${x%.txt}.data"
done
sed -i -e 1,3d yourfile
. Esto no hará eco de nada, solo modificará el archivo en el lugar. Si no necesita canalizar el resultado a otro comando, esto es más fácil.