Me gustaría mostrar el contenido de un archivo de texto en la línea de comando. El archivo solo contiene 5-6 caracteres. ¿Hay una forma fácil de hacer esto?
cat
Como su archivo es corto, puede usar cat
.
cat filename
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 lo contrario pasándole el -F
y -X
banderas.
less -FX filename
Tengo un alias para less -FX
. Puedes hacer uno tú mismo así:
alias aliasname='less -FX'
Si agrega el alias a su configuración de Shell , puede usarlo para siempre.
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
Aunque todos usan cat filename
para imprimir un texto de archivos a la salida estándar, el primer propósito es con cat enating. De la página del manual del gato:
cat: concatena archivos e imprime en la salida estándar
Ahora cat está bien para imprimir archivos, pero hay alternativas:
echo "$(<filename)"
or
printf "%s" "$(<filename)"
Los ( )
devuelve el valor de una expresión, en este caso el contenido de nombre de archivo que luego se expande por $
para echo
o printf
.
Actualizar:
< filename
Esto hace exactamente lo que quieres 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 lectura:
BashPitfalls - archivo cat | sed s/foo/bar /> file
Referencia de Bash - Redireccionamiento
Puede usar el siguiente comando para mostrar el contenido de un archivo de texto.
nombre de archivo del gato
Las herramientas para manejar archivos de texto en Unix son comandos básicos y cotidianos:
En Unix y Linux para imprimir todo el contenido en el archivo
cat filename.txt
o
more filename.txt
o
less filename.txt
Para las últimas líneas
tail filename.txt
Para las primeras líneas
head filename.txt
Una opción es usar more
p.ej. more file.txt
Sin embargo, no tiene todas las características agregadas por less
.
Un ejemplo simple es que no puede desplazarse hacia arriba en la salida. En general, ha sido superado por less, que se nombró en broma porque
menos es más
Yo siempre uso $ less "your file here"
, como es muy simple, proporciona un comando interactivo integrado grep
y le brinda una interfaz fácil de usar que puede desplazar con las teclas de flecha.
(También se incluye en casi todos los sistemas * nix)
Si es un archivo grande y 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 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 con la opción -R, tiene muchas características que lo ayudarán a navegar por el archivo.
Use el comando cat para mostrar el contenido del nombre del archivo. nombre de archivo del gato
Use el comando vim para editar el archivo. nombre de archivo vim