command line - una - Imprimir solo la última línea de un archivo?
sed linux eliminar linea (5)
¿Cómo imprimir solo la última línea de un archivo?
¿Es imprescindible usar awk
para esto? ¿Por qué no usar tail -n 1 myFile
?
Descubre la última línea de un archivo:
Usando sed (editor de flujo):
sed -n ''$p'' fileName
Usando tail:
tail -1 fileName
utilizando awk:
awk ''END { print }'' fileName
También puedes lograr esto usando sed
. Sin embargo, personalmente recomiendo usar tail
o awk
.
De todos modos, si quieres hacer por sed
, aquí hay dos maneras:
Método 1:
sed ''$!d'' filename
Método2:
sed -n ''$p'' filename
Aquí, filename es el nombre del archivo que tiene datos para analizar.
Use la herramienta correcta para el trabajo. Como desea obtener la última línea de un archivo, tail es la herramienta adecuada para el trabajo, especialmente si tiene un archivo grande. El algoritmo de procesamiento de archivos de Tail es más eficiente en este caso.
tail -n 1 file
Si realmente quieres usar awk,
awk ''END{print}'' file
EDITAR: tail -1 file
obsoleto
END{print}
Deberías hacerlo. Gracias a Ventero que fue demasiado vago para enviar esta respuesta.