¿Cómo puedo mostrar el contenido de un archivo de texto en la línea de comando?

Me gustaría mostrar el contenido de un archivo de texto en la línea de comando. El archivo solo contiene 5-6 caracteres. ¿Existe una manera fácil de hacer esto?

Responder

Usando cat

Dado que su archivo es corto, puede usar cat .

cat filename 

Usando less

Si tiene que ver el contenido de un archivo más largo, puede usar un localizador como less .

less filename 

Puede hacer que less se comporte como cat cuando se invoca en archivos pequeños y se comporte normalmente de otra manera pasándole el -F y -X banderas.

less -FX filename 

Tengo un alias para less -FX. Puede hacer uno usted mismo así:

alias aliasname="less -FX" 

Si agrega el alias a su configuración de shell , puede usarlo para siempre.

Usando od

Si su archivo contiene caracteres extraños o no imprimibles, puede usar od para examinar los caracteres. Por ejemplo,

$ cat file (ÐZ4 ?o=÷jï $ od -c test 0000000 202 233 ( 320 K j 357 024 J 017 h Z 4 240 ? o 0000020 = 367 \n 0000023 

Comentarios

  • +1, también sed -n l file podría ser útil.
  • ¿Tiene less alguna ventaja clara sobre otros programas de buscapersonas como pg , ¿o simplemente se reduce a preferencias personales?
  • @SamWeinberg: less tiene más características que pg. Eche un vistazo a las less(1) y pg(1) . También hay otros buscapersonas. Eche un vistazo a unix.stackexchange.com/questions/81129/… . less es probablemente el buscapersonas más utilizado, pero el que uses depende de tus preferencias personales.
  • don ‘ ¡Olvídese de more y most!

Responder

Aunque todos usan cat filename para imprimir el texto de un archivo en la salida estándar, el primer propósito es con gato enating. Desde la página de manual de cat:

cat – concatenar archivos e imprimir en la salida estándar

Ahora cat está bien para imprimir archivos, pero hay alternativas:

 echo "$(<filename)" or printf "%s" "$(<filename)" 

El ( ) return el valor de una expresión, en este caso el contenido de nombre de archivo que luego se expande en $ para echo o printf.

Actualización:

< filename 

Esto hace exactamente lo que quiere y es fácil de recordar.

Aquí hay un ejemplo que le permite seleccionar un archivo en un menú y luego imprimirlo.

#!/bin/bash select fname in *; do # Don"t forget the "" around the second part, else newlines won"t be printed printf "%s" "$(<$fname)" break done 

Para más leyendo:
BashPitfalls – archivo cat | sed s / foo / bar /> archivo
Referencia de Bash: redireccionamiento

Comentarios

  • Tu actualización: » < filename es exactamente lo que como quieras, … » es engañoso. En general, aunque esta es una discusión interesante sobre alternativas, creo que cat es más simple.
  • Bare < filename no mostrar el contenido del archivo, pero cat filename lo hace.
  • También podría usar tee < filename.
  • +1 para el echo "$(<filename)" bashism. No hay suficiente de eso aquí.
  • Esa ‘ es una gran idea para usar el comando interno de Linux con echo "$(<filename)". Gracias …

Respuesta

Las herramientas para manejar archivos de texto en Unix son comandos básicos y cotidianos:

En Unix y Linux para imprimir el contenido completo en un archivo

cat filename.txt 

o

more filename.txt 

o

less filename.txt 

Para las últimas líneas

tail filename.txt 

Para primeras líneas

head filename.txt 

Responder

Puede utilizar el siguiente comando para mostrar contenido de un archivo de texto.

 cat filename 

Comentarios

  • Para obtener más información acerca de cat, ejecute man cat.

Responder

Una opción es usar more

p. ej.more file.txt

Sin embargo, no tiene todas las funciones agregadas por less.
Un ejemplo simple es que no puede desplazarse hacia arriba en la salida. Generalmente ha sido reemplazado por menos – que fue nombrado en broma porque

menos es más

Comentarios

  • Buena explicación de por qué menos era el nombre

Respuesta

Siempre uso $ less "your file here", ya que es muy simple, proporciona un grep comando, y le brinda una interfaz fácil de usar que puede desplazarse con las teclas de flecha.

(También se incluye en casi todos los sistemas * nix)

Comentarios

  • less es la versión overkill de more (compare man less con man more), y para mí tiene dos características molestas: 1) cambia al búfer de pantalla alternativo, cuando menos termina, el archivo que estaba viendo desaparece 2) en EOF debe escribir explícitamente q (lo sé, hay ‘ es una opción para esto). Entonces, una de mis primeras acciones en un nuevo entorno es configurar export PAGER=/bin/more en mi perfil y usar more todo el tiempo.
  • @ ott–: 1) Pruebe el indicador -X. 2) Pruebe el indicador -E. less tiene un modo de emulación more. Puede habilitarlo configurando la variable de entorno LESS_IS_MORE. Puede desplazarse hacia arriba en el more modo de emulación.
  • Consulte también: unix.stackexchange.com/questions / 81129 / …
  • Aunque, en general, estoy de acuerdo en que less es demasiado Complicado. Su capacidad para ejecutar comandos externos es un ejemplo perfecto de su complejidad excesiva.
  • @EvanTeitelman Yo ‘ siempre encontré la funcionalidad grep extremadamente útil, @ott – Encuentro que debido a la ‘ s emulación de more, y ‘ Tiene muchas funciones adicionales, funciona muy bien.

Respuesta

Si es un archivo grande, y Si desea buscar alguna parte específica, puede usar

 cat filename | grep text_to_search -ni 

También puede usar un editor Vim más interactivo (o un editor vi si no tiene Vim):

 vim filename Or vi filename

Vim / vi es un gran editor, también se puede usar como lector en «Modo Normal» o usando la opción -R, tiene muchas características que lo ayudará a navegar a través del archivo.

Comentarios

  • La abreviatura de vim -R es view. Pero tenga en cuenta que no le gustan las redirecciones, como se explica en xargs y vi – «La entrada no es de una terminal» .
  • gracias @manatwork para el heads up! Recientemente comencé a usar Vim y me gusta por sus varias características. Con respecto a las redirecciones, me olvidé de eso, gracias por el recordatorio. A partir de ahora, estoy trabajando en una máquina virtual remota, donde uso ssh sin interfaz GUI, por lo tanto, Vim es de gran utilidad, cuando cualquier otro editor GUI no puede funcionar, ‘ s por qué enfaticé Vim aquí.

Respuesta

Use el comando cat para mostrar el contenido del nombre del archivo. cat nombre de archivo

Utilice el comando vim para editar el archivo. nombre de archivo vim

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *