Búsqueda de sitios web

Descubra por qué el comando "menos" es más rápido que "más" para una navegación de archivos eficaz


Más es una línea de comando *nix utilizada para mostrar el contenido de un archivo en una consola. El uso básico del comando more es ejecutar el comando en un archivo como se muestra a continuación:

Lea también: Aprenda la diferencia entre los comandos 'cat' y 'tac' con ejemplos

Aprenda el comando "más" de Linux

# more /var/log/auth.log
Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session closed for user root
Apr 12 11:55:01 tecmint CRON[7159]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session closed for user root
Apr 12 11:55:02 tecmint CRON[7159]: pam_unix(cron:session): session closed for user root
Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session closed for user root
Apr 12 12:05:01 tecmint CRON[7435]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session closed for user root
Apr 12 12:05:02 tecmint CRON[7435]: pam_unix(cron:session): session closed for user root
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session closed for user root
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session closed for user root
....

Otra forma de utilizar el comando more junto con (pipe) con otros comandos, como el comando cat, como se presenta en el siguiente ejemplo:

cat /var/log/auth.log | more

Para navegar a través del archivo línea por línea, presione la tecla Enter o presione la tecla Barra espaciadora para navegar una página a la vez, siendo la página el tamaño de pantalla de su terminal actual. Para salir del comando simplemente presione la tecla q.

Una opción útil del comando more es el modificador -number que le permite establecer el número de líneas que debe contener una página. Como ejemplo, muestre el archivo auth.log como una página de 10 líneas:

more -10 /var/log/auth.log

Además, puede mostrar una página a partir de un número de línea específico usando la opción +número como se ilustra a continuación:

more +14 /var/log/auth.log
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session closed for user root
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session closed for user root
Apr 12 12:16:01 tecmint mate-screensaver-dialog: gkr-pam: unlocked login keyring
Apr 12 12:17:01 tecmint CRON[7793]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:17:01 tecmint CRON[7793]: pam_unix(cron:session): session closed for user root
Apr 12 12:20:01 tecmint CRON[7905]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:20:01 tecmint CRON[7905]: pam_unix(cron:session): session closed for user root
Apr 12 12:25:01 tecmint CRON[8107]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:25:01 tecmint CRON[8108]: pam_unix(cron:session): session opened for user root by (

Aprenda el comando "menos" de Linux

Similar a más, el comando menos le permite ver el contenido de un archivo y navegar a través del mismo. La principal diferencia entre más y menos es que el comando menos es más rápido porque no carga todo el archivo a la vez y permite la navegación a través del archivo usando teclas arriba/abajo de página.

Puede usarse como un comando independiente emitido contra un archivo o usarse con canalizaciones con una multitud de comandos de Linux para limitar su salida en pantalla, permitiéndole desplazarse por los resultados.

less /var/log/auth.log
ls /etc | less

Puede navegar por el archivo línea por línea presionando la tecla Enter. La navegación de la página se puede manejar con la tecla barra espaciadorar. El tamaño de la página está representado por el tamaño de la pantalla actual de su terminal. Para salir del comando, escriba la tecla q, de la misma manera que para el comando more.

Una característica útil del comando less es el uso de la opción /word-to-seach. Por ejemplo, puede buscar y hacer coincidir todos los mensajes sshd de un archivo de registro especificando interactivamente la cadena /sshd.

Para mostrar un archivo mirando a un número de línea específico, utilice la siguiente sintaxis:

less +5 /var/log/auth.log

Si necesita rastrear el número de cada línea con el comando menos use la opción -N.

less -N /var/log/daemon.log
      1 Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session opened for user root by (uid=0)
      2 Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session closed for user root
      3 Apr 12 11:55:01 tecmint CRON[7159]: pam_unix(cron:session): session opened for user root by (uid=0)
      4 Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session opened for user root by (uid=0)
      5 Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session closed for user root
      6 Apr 12 11:55:02 tecmint CRON[7159]: pam_unix(cron:session): session closed for user root
      7 Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session opened for user root by (uid=0)
      8 Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session closed for user root
      9 Apr 12 12:05:01 tecmint CRON[7435]: pam_unix(cron:session): session opened for user root by (uid=0)
     10 Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session opened for user root by (uid=0)
     11 Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session closed for user root

De forma predeterminada, la única forma de salir del comando less es presionar la tecla q. Para cambiar este comportamiento y salir automáticamente del archivo cuando llegue al final del archivo, utilice la opción -e o -E:

less -e /var/log/auth.log
less -E /var/log/auth.log

Para abrir un archivo en la primera aparición de un patrón, utilice la siguiente sintaxis:

less +/sshd /var/log/auth.log
Apr 12 16:19:39 tecmint sshd[16666]: Accepted password for tecmint from 192.168.0.15 port 41634 ssh2
Apr 12 16:19:39 tecmint sshd[16666]: pam_unix(sshd:session): session opened for user tecmint by (uid=0)
Apr 12 16:19:39 tecmint systemd-logind[954]: New session 1 of user tecmint.
Apr 12 16:19:48 tecmint sshd[16728]: Received disconnect from 192.168.0.15: 11: disconnected by user
Apr 12 16:19:48 tecmint sshd[16666]: pam_unix(sshd:session): session closed for user tecmint
Apr 12 16:20:01 tecmint CRON[16799]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 16:20:02 tecmint CRON[16799]: pam_unix(cron:session): session closed for user root
Apr 12 16:25:01 tecmint CRON[17026]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 16:25:01 tecmint CRON[17025]: pam_unix(cron:session): session opened for user root by (uid=0)

El comando anterior le indica a less que abra el archivo auth.log en la primera coincidencia de la cadena sshd.

Para agregar automáticamente el contenido de un archivo abierto con el comando less, utilice la combinación de teclas Shift+f o ejecute less con la siguiente sintaxis.

less +F /var/log/syslog

Esto hace que sea menos necesario ejecutarlo en modo interactivo (en vivo) y mostrar contenido nuevo sobre la marcha mientras se espera que se escriban nuevos datos en el archivo. Este comportamiento es similar al comando tail -f.

En combinación con un patrón, puede ver el archivo de registro de forma interactiva presionando la tecla Shift+f mientras coincide con una palabra clave. Para salir del modo en vivo simplemente presione las teclas Ctrl+c.

less +/CRON /var/log/syslog

Ya sea que decidas usar más o menos, que es una elección personal, recuerda que menos es más con más características.

Lea también: Administre archivos de manera efectiva usando los comandos head, tail y cat