¿Cómo abro un archivo de texto en mi terminal?

110

Hay un archivo llamado RESULTS.txt y quiero abrir este archivo en mi terminal. (quiero decir que quiero ver el contenido del archivo en la terminal y no en algún editor de texto)

¿Cómo hago eso?

    
pregunta BuZZ-dEE 27.02.2013 - 13:47

16 respuestas

137

Para archivos cortos:

cat <path/your_file>

muestra directamente un archivo de texto en la terminal.

Para archivos más largos:

less <path/your_file>

le permite desplazarse y buscar ( / text to search Ingresar ) en el archivo; presione q para salir.

por ejemplo,

cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt
    
respondido por el dedunumax 27.02.2013 - 13:59
26

Otra alternativa es vim .

vim RESULTS.txt

Una vez que haya abierto un archivo con vim, puede insertar texto escribiendo i , por ejemplo. Si quiere guardar su archivo use :w (write) o :q (quit) o :wq (para escribir y salir) o :q! (quit and save save). A veces necesitas presionar la tecla ESC para poder escribir los comandos.

Vim requiere algo de aprendizaje, pero se usa ampliamente y es muy versátil.

Consulte la wiki de ayuda de la comunidad: enlace

  

Vim es un editor de texto avanzado que proporciona el poder del defacto   El editor de Unix 'Vi' con un conjunto de características más completo. Vim a menudo se llama   un "editor de programadores", y es tan útil para programar tantos   considérelo un IDE completo. Sin embargo, no es solo para programadores. Empuje   es perfecto para todo tipo de edición de texto, desde la redacción de correos electrónicos hasta   editar archivos de configuración.

    
respondido por el Private 27.02.2013 - 13:50
14

todas esas son las mejores formas y hay una forma más de hacerlo y & amp; eso es con head command.

head -n -1 filename.txt

y

head -n -0 filename.txt

ambos le darán la misma información.

Explicación del comando principal:

En general, se usa el comando head para imprimir las líneas de inicio de cualquier archivo de texto. Podemos ver el archivo de texto con

head filename.txt

Eso imprimirá las primeras 10 líneas del archivo de texto anterior.

Si desea especificar el número de líneas que se van a ver, puede usar head como

head -n 20 filename.txt

Luego, en el archivo de texto anterior, se verán las primeras 20 líneas.

Si quiere ver datos de archivos completos con la cabeza, entonces podemos obtenerlos por

head -n -0 filename.txt

Espero que la explicación anterior te dé una idea sobre el uso de la cabeza.

    
respondido por el Jai 28.02.2013 - 16:59
12

Si el archivo es bastante largo, es posible que desee utilizar

less RESULTS.txt

para que pueda navegar a través de él con las teclas direccionales.

    
respondido por el tvuillemin 28.02.2013 - 07:11
10

Otra opción es:

tail -n 30 result.txt

para imprimir las últimas 30 líneas de un archivo grande llamado result.txt .

    
respondido por el Jool 27.02.2013 - 15:19
7

Otra opción:

tail -f your_file

Le mostrará las últimas diez líneas de your_file . Si un proceso le agrega algo a este archivo, lo verá en su terminal. man tail te da más en tail .

Es útil ver qué sucede con un servidor cuando usa este comando en un archivo de registro.

Presione Ctrl - C para salir cuando termine de ver.

    
respondido por el Luc M 28.02.2013 - 03:31
3

Con un editor de texto de terminal: nano /path/to/file/RESULTS.txt

    
respondido por el prophecy201 27.02.2013 - 13:17
3

Hay muchas alternativas para hacer eso:

Algunos de estos programas tienen muchos parámetros, así que échale un vistazo con --help after the command ..

  • cat filename imprime todo el archivo a la vez
  • more / less filename comportamiento similar para ver el archivo en partes
  • tail filename comienza a leer desde la cola del archivo
  • grep text filename para filtrar resultados

Espero que algo de esto funcione para ti ...

    
respondido por el kainlite 28.02.2013 - 03:04
2

Ya se han proporcionado muchas buenas opciones, pero otra opción si necesitas editar es emacs:

emacs -nw RESULTS.txt

puede no necesitar el -nw , dependiendo. También puede tener que apt-get install emacs23 o apt-get install emacs24 , o si no tiene X o no quiere dependencias X relacionadas, apt-get install emacs23-nox o apt-get install emacs24-nox .

Y además de cat y less como se menciona en otra parte, hay more . Más es menos, porque ve una página a la vez y no puede desplazarse por el comando mismo, pero puede desplazarse con la ventana del terminal, si tiene una ventana de terminal de desplazamiento:

more RESULTS.txt

Si estás en bash, tienes algo similar a cat haciendo:

while IFS= read a;do echo "$a";done<RESULTS.txt
    
respondido por el Gary S. Weaver 27.02.2013 - 19:44
2

Si solo quiere leer el contenido del archivo, vaya al directorio de archivos y escriba

less RESULTS.txt

Si desea leer y editar el archivo de texto, desde el mismo directorio escriba

nano RESULTS.txt

El interruptor -w en el comando nano se puede insertar antes del nombre del archivo para evitar el enrollamiento de líneas largas.

    
respondido por el DocKuro 28.02.2013 - 03:40
1

Si necesita editar el contenido del archivo, normalmente uso nano.

nano filename
    
respondido por el Jaison Brooks 27.02.2013 - 19:42
1

o simplemente

  

vi YourFile

use los botones hjkl para mover la línea izquierda / abajo / arriba / derecha, Esc luego: q para salir

y puede AvPág / AvPág

también puede editarlo aquí de forma estricta

aquí encontrará más enlace

    
respondido por el 4pie0 27.02.2013 - 22:12
1

El shell programm sed también tiene una opción para imprimir el contenido de un archivo.

sed -n p RESULTS.txt

Entonces sed recorre cada línea e imprime en la terminal. Pero sed también tiene capacidades de edición. Por ejemplo, si quiere reemplazar cada coma con un punto, puede escribir:

sed 's/,/./g' RESULTS.txt
    
respondido por el qbi 27.02.2013 - 22:28
1

Como parece que estamos enumerando todas las alternativas disponibles para mostrar cualquier archivo de texto en el terminal, sería bastante divertido introducir pv como técnicamente un método válido (pero inusual), aunque normalmente usaría cat en su lugar para la mayoría de las cosas.

Está en los repositorios y, por lo tanto, puede instalarse con sudo apt-get install pv si aún no lo tiene.

A medida que las notas de página man , pv se usa muy a menudo a

  

supervisa el progreso de los datos a través de una tubería ... pv copiará cada ARCHIVO suministrado a su vez a la salida estándar (- significa entrada estándar), o si no se especifican ARCHIVOS solo se copia la entrada estándar. Este es el mismo comportamiento que cat (1).

Con pv , puede imprimir literalmente el archivo en la pantalla y elegir la velocidad ( -L ) a la que aparece. El siguiente ejemplo usa una tasa alta (300), pero si elige una tasa baja como -L 50 , parecerá que la computadora está tecleando el archivo por usted.

pv /etc/apt/sources.list -qL 300

No hace falta decir que puede aumentar la velocidad más ( -L 8000 ), y el comando se vuelve muy similar a cat , y la salida aparece instantáneamente.

Para obtener más información, vea man pv o las páginas de manual de Ubuntu en línea .

    
respondido por el Mik 28.02.2013 - 01:22
0

Otra respuesta más exótica es usar grep :

grep . RESULTS.txt

El comando grep busca cada carácter en el archivo y lo imprime. Entonces, básicamente, se imprime el archivo completo.

    
respondido por el qbi 27.02.2013 - 22:25
0

¿Por qué no?

También puedes usar

most RESULTS.txt

Es casi lo mismo que less , pero también admite el desplazamiento horizontal si el archivo contiene líneas largas, lo que es muy útil.

most no está instalado por defecto, así que para usarlo, primero tiene que

sudo apt install most
    
respondido por el Joe 16.08.2018 - 07:39

Lea otras preguntas en las etiquetas