Consultar archivos 1 cat
2. more, less
El comando Unix more también permite la presentación del contenido de archivos de texto en pantalla. Sin embargo, su visualización se hace página por página; las teclas útiles con more son:
[Intro] Desplaza el texto línea a línea.
[Espacio] Desplaza el texto página por página.
[q] Sale del programa.
Este ejemplo muestra el indicador presente en la parte inferior de la pantalla: [nicolas]$ more /etc/services
ssh 22/udp # SSH Remote Login Protocol telnet 23/tcp
telnet 23/udp # 24 - private mail system
smtp 25/tcp mail smtp 25/udp mail time 37/tcp timserver time 37/udp timserver
rlp 39/tcp resource # resource location rlp 39/udp resource # resource location nameserver 42/tcp name # IEN 116
nameserver 42/udp name # IEN 116 nicname 43/tcp whois
nicname 43/udp whois
tacacs 49/tcp # Login Host Protocol (TACACS)
tacacs 49/udp # Login Host Protocol (TACACS)
re-mail-ck 50/tcp # Remote Mail Checking Protocol
re-mail-ck 50/udp # Remote Mail Checking Protocol
domain 53/tcp # name-domain server domain 53/udp
whois++ 63/tcp --Sigue--(10%)
Existe en Linux un comando similar, más evolucionado que more, llamado less. Además de las teclas anteriores, acepta también:
[Arriba] Sube una línea.
[Abajo] Baja una línea.
[Re pág] Sube una página.
[Av pág] Baja una página.
Finalmente, el comando less tiene las mismas funciones de búsqueda de cadenas que el editor Vi descrito en el capítulo Edición de archivos de texto - Vi.
El uso de los comandos more y less se adapta bien a la presentación de archivos de texto largos.
3. od, strings
El comando od (octal dump) muestra el contenido de un archivo en octal o en otros formatos según las opciones; la opción -x produce una salida hexadecimal, por ejemplo: [nicolas]$ cat /etc/motd
Bienvenido a Linux
Está conectado al equipo doe.reso.local [nicolas]$ od /etc/motd 0000000 064502 067145 062566 072556 020145 067563 071565 046040 0000020 067151 074165 053012 072557 020163 072352 071545 061440 0000040 067157 062556 072143 020351 072563 020162 060554 066440 0000060 061541 064550 062556 062040 062557 071056 071545 027157 0000100 067554 060543 005154 0000106
[nicolas]$ od -x /etc/motd
0000000 6942 6e65 6576 756e 2065 6f73 7375 4c20 0000020 6e69 7875 560a 756f 2073 74ea 7365 6320 0000040 6e6f 656e 7463 20e9 7573 2072 616c 6d20 0000060 6361 6968 656e 6420 656f 722e 7365 2e6f 0000100 6f6c 6163 0a6c
0000106
Este tipo de presentación lo usan principalmente los programadores para examinar el contenido de archivos binarios.
Del mismo estilo, el comando strings muestra las cadenas de caracteres legibles contenidas en los archivos binarios; esto puede resultar útil para un programador o un administrador del sistema en caso de depuración:
[nicolas]$ strings /bin/ls /lib/ld-linux.so.2 libtermcap.so.2 _DYNAMIC _init tgetent _fini _GLOBAL_OFFSET_TABLE_ _Jv_RegisterClasses tgetstr ...
ntroducción
Sea cual sea el sistema operativo utilizado, es indispensable saber editar archivos de texto. Esto es mucho más cierto aún en Linux, pues la inmensa mayoría de los archivos de configuración y de scripts del shell están en este formato, sin olvidar también los archivos de log.
Se entiende por archivo de texto un archivo que contiene datos en forma de caracteres ASCII (American Standard Code for Information Interchange), es decir, texto sin formato, ni siquiera la noción de tipo de letra.
Desde el simple comando ed que permite editar línea por línea un archivo de texto, hasta la herramienta nedit con interfaz gráfica que propone el coloreado sintáctico de diferentes formatos de archivo, existe un gran número de editores en Linux.
A pesar de una interfaz poco ergonómica (pero sin embargo muy potente), el editor de Vi, se ha convertido en un estándar en todos los sistemas UNIX, y es el que
Actualmente, se utiliza una variante de Vi, normalmente Vim (Vi IMproved). Sin embargo, los comandos que veremos aquí son idénticos
Presentación de Vi
Vi, que significa "VIsual editor" y se pronuncia "vi-ei" (o [vi:ai]), es un editor a pantalla completa con línea de comandos.
Pensado para trabajar en cualquier tipo de terminal (y por lo tanto con cualquier teclado), esta herramienta puede funcionar utilizando únicamente las teclas alfanuméricas básicas, además de la tecla de escape del teclado.
En un teclado de PC español "qwerty" actual, podríamos limitarnos a utilizar las teclas blancas siguientes:
Es posible utilizar las teclas grises del teclado, como las flechas de dirección o el teclado numérico, pero es preferible saber manipular vim sin estas teclas al principio. Así, sea cual sea la configuración del terminal o la variante de vi - empleada, la edición de un archivo en Linux no presentará problemas.
1. Inicio de Vi
Basta con escribir el comando vi para iniciar el editor Vi. En este caso, se abre el editor, listo para escribir un nuevo archivo:
_ ~ ~ ~ ~ ~ VIM - Vi ~ ~ Improved ~ ~ versión 7.3.712 ~ by Bram Moolenaar et al. ~ Modified by <[email protected]> ~ Vim is open source and freely
distributable ~
~ Sponsor Vim development!
~ type :help sponsor<Enter> for information ~ type :q<Enter> to exit
~ type :help<Enter> or <F1> for on-line help ~ type :help version7<Enter> for version info ~
~ ~ ~
~
Aquí, el cursor se encuentra arriba a la izquierda de la pantalla y se muestra un texto de bienvenida; éste no interfiere con el texto del nuevo archivo y se ocultará
automáticamente con el primer comando de edición.
La última línea de la vista se reserva a mostrar información diversa (posición del cursor, número de línea, modo de funcionamiento...) y a los comandos en modo "ex" que se detallarán más adelante.
El carácter ~ al principio de línea significa que no hay ningún carácter -ni siquiera un retorno de carro (tecla [Intro])- en la línea, es decir, que se ha llegado al final del archivo.
También puede editarse un archivo existente especificando su nombre como argumento en la línea de comando:
$ vi archivo
Finalmente, si el argumento pasado es un nombre de archivo inexistente, el nuevo archivo editado se guardará con este nombre predeterminado:
$ vi nuevo_archivo
Para salir del editor Vi sin haber leído el resto del capítulo, hay que escribir la siguiente secuencia de teclas: [Esc], [:], [q], [!], [Intro].