cat – ¿Comando para enviar el contenido del archivo a stdout?

Pregunta:

Sé que cat puede hacer esto, pero su propósito principal es concatenar en lugar de simplemente mostrar el contenido.

También sé less vez more , pero estoy buscando algo simple ( no un buscapersonas ) que solo envíe el contenido de un archivo a la terminal y esté hecho específicamente para esto, si existe.

Respuesta:

El más obvio es el cat . Pero también echa un vistazo a la head y la tail . También hay otras utilidades de shell para imprimir un archivo línea por línea: sed , awk , grep . Pero esos son para alternar el contenido del archivo o para buscar dentro del archivo.

Hice algunas pruebas para estimar cuál es la más efectiva. Corro a través de strace para ver cuál hizo la menor cantidad de llamadas al sistema. Mi archivo tiene 1275 líneas.

  • awk : 1355 llamadas al sistema
  • cat : 51 llamadas al sistema
  • grep : 1337 llamadas al sistema
  • head : 93 llamadas al sistema
  • tail : 130 llamadas al sistema
  • sed : 1378 llamadas al sistema

Como puede ver, incluso si cat fue diseñado para concatenar archivos, es el más rápido y efectivo. sed , awk y grep imprimieron el archivo línea por línea, por eso tienen más de 1275 llamadas al sistema.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım