← Terminal y Línea de Comandos en Linux Bloque 3 · Manipular archivos y directorios · Tema 13 de 43

Tema 13

Editar texto en la terminal

Si la configuración de Linux está en archivos de texto, administrar un sistema es, en buena parte, editar texto. Y a menudo hay que hacerlo donde no existe una ventana: en un servidor remoto, en un contenedor, en un equipo que no arranca su entorno gráfico. Este tema presenta dos editores que funcionan dentro de la terminal. nano, que se aprende en diez minutos y alcanza para casi todo. Y vim, del que veremos lo justo para no quedar atrapados el día que se abra solo.

1. Por qué un editor de terminal

En un equipo de escritorio se puede editar un archivo con un programa gráfico. Hay sin embargo situaciones, que para un programador o un administrador son las de todos los días, donde eso no es posible o no es cómodo:

SituaciónPor qué hace falta un editor de terminal
Un servidor remotoSe accede por una conexión de texto. No hay ventanas.
Un contenedor o una máquina mínimaNo tienen entorno gráfico instalado.
Un sistema que no arranca bienLa reparación se hace desde una consola.
Un cambio de una líneaAbrir el archivo donde ya estás trabajando es más rápido que ir a buscar otro programa.
Un programa que necesita que escribas algoVarias herramientas abren un editor por su cuenta, dentro de la terminal, y esperan a que lo cierres.

La última fila es la que toma por sorpresa. Al registrar un cambio con git, al programar una tarea con crontab -e o al modificar los permisos de administración con visudo, el programa abre un editor y queda a la espera. Quien no sabe usarlo, ni salir de él, no puede seguir.

Una aclaración de vocabulario. Un editor de texto no es un procesador de textos. No hay negritas, tipos de letra ni márgenes: se editan los caracteres del archivo, y nada más. Es la herramienta para configuración, scripts y código.

2. Los editores disponibles

EditorCarácterDónde está
nanoSimple. Se escribe directamente y los atajos están a la vista en la pantalla.Instalado en Ubuntu, Debian y muchas otras.
vi / vimPotente, con una lógica propia que hay que aprender. Muy rápido para quien lo domina.En prácticamente todos los sistemas de la familia Unix.
emacsExtensible hasta ser casi un entorno de trabajo completo.Hay que instalarlo.
microModerno, con los atajos habituales de los programas gráficos: Ctrl+S, Ctrl+C, Ctrl+V.Hay que instalarlo.

El plan del tema sigue un criterio práctico. nano será nuestro editor de trabajo en el resto del curso. De vim aprenderemos un conjunto mínimo, por una razón: es el que está garantizado en cualquier máquina, y el que muchas herramientas abren cuando no se les indicó otro.

3. nano: la pantalla

nano se inicia con el nombre del archivo a editar. Si el archivo no existe, lo creará al guardar. Empezamos uno nuevo en el directorio de práctica:

terminal
$ cd ~/practica
$ nano tareas.txt

La terminal cambia por completo, como ocurría con less. La pantalla de nano tiene cuatro zonas:

la pantalla de nano
  GNU nano 7.2                    tareas.txt                              
█



                              [ New File ]
^G Help      ^O Write Out ^W Where Is  ^K Cut       ^T Execute   ^C Location
^X Exit      ^R Read File ^\ Replace   ^U Paste     ^J Justify   ^/ Go To Line
ZonaContenido
Primera líneaLa versión, el nombre del archivo y, cuando hay cambios sin guardar, la palabra Modified.
El centroEl texto del archivo, con el cursor.
Antepenúltima líneaLos mensajes y las preguntas del editor.
Las dos últimasLos atajos más usados. Es la ayuda permanente de nano.

Las dos líneas de atajos son la razón de que nano sea fácil: no hay que recordar cómo se guarda o cómo se sale, porque está escrito al pie. Solo hay que conocer la notación:

En pantallaSignificaEjemplo
^La tecla Ctrl.^X es Ctrl+X
M-La tecla Alt. La M es de Meta, su nombre antiguo.M-U es Alt+U

Las letras se muestran en mayúscula, pero se pulsan sin la tecla de mayúsculas. En un sistema configurado en español los rótulos aparecen traducidos —Ayuda, Guardar, Salir—, con las mismas teclas.

4. nano: escribir, guardar y salir

En nano se escribe directamente, como en cualquier programa: las teclas producen texto, Enter crea una línea nueva, y las flechas, Retroceso y Suprimir funcionan como se espera. Escribe estas cuatro líneas:

el contenido de tareas.txt
Comprar pan
Llamar a Luis
Pagar la luz
Estudiar vim

En la primera línea de la pantalla aparece Modified: lo escrito está en la memoria del editor, y todavía no en el disco. El ciclo de guardar y salir tiene tres pasos:

  1. Ctrl+O para guardar. La O es de write Out. guardar
  2. Enter para confirmar el nombre que nano propone: File Name to Write: tareas.txt. confirmar
  3. Ctrl+X para salir. salir

Tras el segundo paso, nano informa [ Wrote 4 lines ] y la marca Modified desaparece. En el paso intermedio se puede cambiar el nombre antes de pulsar Enter, lo que equivale a un «guardar como».

Si se pulsa Ctrl+X con cambios sin guardar, nano no los descarta en silencio. Pregunta:

al salir con cambios pendientes
Save modified buffer?
 Y Yes
 N No           ^C Cancel
RespuestaEfecto
Y, y luego EnterGuarda y sale.
NSale sin guardar. Los cambios se pierden.
Ctrl+CCancela: vuelve al texto, sin salir.

La segunda fila es útil, no solo peligrosa: es la forma de abandonar una edición que salió mal y dejar el archivo como estaba. De vuelta en la shell, se comprueba el resultado:

terminal
$ cat tareas.txt
Comprar pan
Llamar a Luis
Pagar la luz
Estudiar vim
$ wc tareas.txt
 4 10 52 tareas.txt

5. nano: moverse y buscar

Con un archivo de cuatro líneas alcanzan las flechas. Con uno de configuración de trescientas, hacen falta saltos:

AtajoAcción
Ctrl+A, Ctrl+EAl principio y al final de la línea. Los mismos de Bash.
Ctrl+Y, Ctrl+VUna pantalla hacia arriba y hacia abajo. También RePág y AvPág.
Alt+\, Alt+/Al principio y al final del archivo.
Ctrl+_ (Ctrl y el guion bajo)Ir a un número de línea.
Ctrl+WBuscar. La W es de Where is.
Alt+WRepetir la búsqueda: la coincidencia siguiente.
Ctrl+\Buscar y reemplazar.
Ctrl+CMostrar en qué línea y columna está el cursor. Dentro de una pregunta, cancelarla.

La búsqueda es el modo normal de moverse en un archivo de configuración: se sabe qué parámetro se quiere cambiar, se pulsa Ctrl+W, se escribe su nombre y Enter. El reemplazo pregunta en cada coincidencia, y ofrece A para reemplazarlas todas de una vez.

El salto a una línea se usa mucho con los mensajes de error, que suelen decir «error en la línea 42». Se puede indicar al abrir el archivo:

terminal
$ nano +3 tareas.txt                # abre con el cursor en la línea 3

6. nano: cortar, copiar, pegar y deshacer

nano trabaja con líneas enteras por defecto, lo que resulta cómodo para archivos de configuración, donde cada línea es un ajuste:

AtajoAcción
Ctrl+KCorta la línea actual. Es también la manera de borrar una línea.
Alt+6Copia la línea actual, sin quitarla.
Ctrl+UPega lo cortado o copiado.
Alt+APone una marca: a partir de ahí, mover el cursor selecciona texto. Ctrl+K o Alt+6 actúan entonces sobre la selección.
Alt+UDeshace el último cambio.
Alt+ERehace lo deshecho.

Varias pulsaciones seguidas de Ctrl+K cortan varias líneas y las acumulan; un solo Ctrl+U las pega todas. Así se mueve un bloque: se lo corta, se lleva el cursor al destino y se lo pega.

Los atajos de escritorio no valen aquí

Ctrl+C, Ctrl+V, Ctrl+Z y Ctrl+S tienen otro significado dentro de la terminal. En nano, Ctrl+Z no deshace: según la versión, no hace nada o suspende el editor y te devuelve a la shell, con el archivo a medio editar. Si ocurre lo segundo, el comando fg lo trae de vuelta; lo explicamos en el tema 33. Para copiar y pegar entre la ventana y otro programa siguen valiendo Ctrl+Mayús+C y Ctrl+Mayús+V, del tema 2.

7. nano: opciones y configuración

Algunas opciones de la línea de comandos mejoran mucho la experiencia:

OpciónEfecto
-lMuestra los números de línea. Dentro del editor se alternan con Alt+N.
-BAl guardar, conserva la versión anterior en un archivo con el mismo nombre terminado en ~.
-iSangría automática: cada línea nueva empieza alineada con la anterior.
-mPermite ubicar el cursor con el ratón.
-vSolo lectura: se puede mirar, no modificar.
+NAbre en la línea N.

Para no escribirlas cada vez, se las fija en el archivo de configuración personal, ~/.nanorc. Es uno de esos archivos ocultos del directorio personal de los que hablamos en el tema 8, y editarlo con el propio nano es una buena práctica:

~/.nanorc
set linenumbers
set autoindent
set mouse

Toda la ayuda está dentro del editor, con Ctrl+G, y en man nano.

8. vim: por qué hay que conocerlo

vi es el editor histórico de Unix, de 1976, y forma parte del estándar que define a estos sistemas. vim, de Vi IMproved, es su sucesor ampliado, y el que se usa hoy. La consecuencia de esa historia es su ubicuidad:

Razón para aprender lo básicoDetalle
Está en todas partes.Un servidor mínimo puede no tener nano. Alguna forma de vi hay siempre.
Se abre solo.En muchos sistemas es el editor que usan git, crontab y otras herramientas si no se configuró otro.
Sus teclas se repiten.less y man tomaron de él la búsqueda con /, y n, g y G.

En Ubuntu, el comando vi ejecuta una versión reducida. La completa se instala con sudo apt install vim; para lo que veremos aquí, cualquiera de las dos sirve.

vim tiene fama de difícil, y la dificultad es una sola: funciona de una manera que ningún otro programa de uso común comparte. Entendida esa manera, lo básico es poco.

9. vim: los modos

En nano, como en casi todos los editores, una tecla siempre escribe su letra, y las órdenes se dan con Ctrl o Alt. vim hace otra cosa: tiene modos, y la misma tecla significa cosas distintas según el modo en que esté el editor.

Los modos de vim: del modo normal se pasa al de inserción con la tecla i y se vuelve con Escape; del modo normal se pasa a la línea de órdenes con los dos puntos y se vuelve con Enter o Escape i Esc : Enter Inserción las teclas escriben Normal las teclas ordenan Línea de órdenes guardar, salir
El modo normal es el centro: se entra en él al abrir vim y a él se vuelve siempre, con la tecla Esc.
ModoLas teclas…Se entra conSe reconoce por
NormalSon órdenes: mover, borrar, copiar. No escriben.Esc. Es el modo inicial.La última línea está vacía.
InserciónEscriben texto, como en cualquier editor.i, desde el modo normal.-- INSERT -- en la última línea.
Línea de órdenesForman una orden que se ejecuta con Enter.:, desde el modo normal.El cursor salta a la última línea, tras dos puntos.

Esto explica la experiencia de todos los que abren vim sin aviso. Empieza en modo normal. Se intenta escribir, y cada letra se ejecuta como una orden: el cursor salta, se borran cosas, suena una alarma. Nada parece funcionar, incluida la salida, porque Ctrl+C y Ctrl+X no hacen aquí lo acostumbrado.

La razón del diseño es que al editar se pasa más tiempo recorriendo y modificando texto que escribiéndolo. Con un modo dedicado a las órdenes, todas las teclas quedan disponibles para eso, sin combinaciones con Ctrl.

Ante la duda, Esc

La tecla Esc lleva siempre al modo normal, desde cualquier otro, y pulsarla de más no hace daño. Cuando no sepas en qué modo estás o qué acabas de hacer, Esc dos veces, y a partir de ahí.

10. vim: lo mínimo para sobrevivir

Con seis elementos se puede abrir un archivo, cambiarlo, guardarlo y salir. Es lo que hay que saber aunque no se piense usar vim nunca:

Tecla u ordenModoEfecto
iNormalPasa al modo de inserción.
EscCualquieraVuelve al modo normal.
:w y EnterNormalGuarda. De write.
:q y EnterNormalSale. De quit. Solo funciona si no hay cambios sin guardar.
:wq y EnterNormalGuarda y sale.
:q! y EnterNormalSale sin guardar, descartando los cambios.

Practiquémoslo agregando una quinta línea a tareas.txt:

  1. Abrir: vim tareas.txt. Aparecen las cuatro líneas, y al pie, "tareas.txt" 4L, 52B. normal
  2. Ir a la última línea: la tecla G, mayúscula. normal
  3. Abrir una línea debajo y empezar a escribir: la tecla o. Al pie aparece -- INSERT --. inserción
  4. Escribir: Regar las plantas. inserción
  5. Volver al modo normal: Esc. El rótulo del pie desaparece. normal
  6. Guardar y salir: :wq y Enter. órdenes
terminal
$ cat tareas.txt
Comprar pan
Llamar a Luis
Pagar la luz
Estudiar vim
Regar las plantas

La tecla o del tercer paso es una de las varias que entran al modo de inserción; se diferencian en dónde dejan el cursor:

TeclaEmpieza a insertar…
iAntes del cursor.
aDespués del cursor.
AAl final de la línea.
oEn una línea nueva, debajo de la actual.
OEn una línea nueva, encima de la actual.
Cómo salir de vim, en cualquier circunstancia

Esc, y luego :q! y Enter. Sale descartando lo que se haya hecho. Es la secuencia que hay que recordar para cuando vim se abre sin haberlo pedido y solo se quiere volver a la shell.

11. vim: moverse

Las flechas funcionan, en los dos modos. El modo normal ofrece además movimientos más largos, cada uno con una tecla:

TeclaMueve el cursor…
h j k lIzquierda, abajo, arriba, derecha. Son las flechas originales de vi, bajo la mano derecha.
w, bA la palabra siguiente; a la anterior.
0, $Al principio y al final de la línea.
gg, GA la primera y a la última línea del archivo.
42G, o :42A la línea 42.
Ctrl+F, Ctrl+BUna pantalla adelante y atrás.

Un número delante de una orden la repite: 5j baja cinco líneas, 3w avanza tres palabras. Es una regla general de vim, que vale también para las órdenes de borrado de la sección siguiente.

12. vim: borrar, copiar, pegar y deshacer

Estas órdenes se dan en modo normal, sin entrar a insertar:

TeclaEfecto
xBorra el carácter bajo el cursor.
ddBorra la línea entera. La deja guardada, de modo que también es «cortar».
dwBorra desde el cursor hasta el final de la palabra.
DBorra desde el cursor hasta el final de la línea.
yyCopia la línea. La y es de yank.
pPega debajo de la línea actual lo último borrado o copiado.
cwBorra la palabra y entra en inserción, para escribir otra en su lugar.
uDeshace el último cambio. Se puede repetir.
Ctrl+RRehace lo deshecho.
.Repite el último cambio.

Las órdenes se componen como un pequeño lenguaje: una acción y un movimiento. d es borrar y w es una palabra, de modo que dw borra una palabra; d$ borra hasta el final de la línea, y dG, hasta el final del archivo. Con el número delante, 3dd borra tres líneas. Quien aprende diez acciones y diez movimientos tiene cien órdenes, y esa es la fuente de la eficacia de vim.

Mover una línea de lugar es, entonces, dd sobre ella, ir al destino, y p. Y la tecla u es la red de seguridad: cualquier orden dada por error se deshace.

13. vim: buscar y reemplazar

La búsqueda es la que ya sabes, porque less la copió de aquí:

Tecla u ordenEfecto
/texto y EnterBusca hacia adelante.
?texto y EnterBusca hacia atrás.
n, NCoincidencia siguiente y anterior.
:%s/viejo/nuevo/gReemplaza viejo por nuevo en todo el archivo.
:%s/viejo/nuevo/gcLo mismo, pidiendo confirmación en cada caso.
:set numberMuestra los números de línea. :set nonumber los quita.
anatomía de la orden de reemplazo
:%s/viejo/nuevo/g
 ││ │     │     │
 ││ │     │     └─ en todas las apariciones de cada línea, no solo la primera
 ││ │     └─ el texto que lo reemplaza
 ││ └─ el texto buscado
 │└─ sustituir
 └─ en todas las líneas del archivo

Vale la pena mirar esa orden con atención, aunque parezca críptica: es exactamente la sintaxis de sed, la herramienta para modificar texto desde la línea de comandos que estudiamos en el tema 29. Lo que se aprende en un lugar sirve en el otro.

14. vim: los mensajes que desconciertan

Hay cuatro situaciones que detienen a quien empieza. Todas tienen una salida simple:

Mensaje o síntomaQué ocurreQué hacer
E37: No write since last change (add ! to override)Se intentó salir con :q habiendo cambios sin guardar.:wq para guardarlos, o :q! para descartarlos.
E45: 'readonly' option is set (add ! to override)El archivo es de solo lectura para tu usuario. Típico de los archivos de /etc.:q!, y volver a abrirlo con permisos de administrador. Sección siguiente.
E325: ATTENTION — Found a swap file…Existe un archivo temporal de una sesión anterior: el archivo está abierto en otra terminal, o vim se cerró mal.Si está abierto en otro lado, q para salir. Si hubo un corte, r para recuperar lo que se estaba editando.
La pantalla no responde a ninguna tecla.Se pulsó Ctrl+S, que congela la terminal.Ctrl+Q la reanuda. Lo vimos en el tema 2.

El tercer caso merece una explicación. Mientras se edita, vim guarda periódicamente lo escrito en un archivo oculto junto al original, con un nombre como .tareas.txt.swp. Si la terminal se cierra o la conexión se corta, ese archivo permite recuperar el trabajo. Es una protección, no un error.

Para ir más allá de este mínimo, vim trae su propio curso. El comando vimtutor abre un texto de ejercicios que se resuelven en el propio editor y lleva una media hora; vimtutor es lo muestra en español. Requiere la versión completa de vim.

15. Editar archivos del sistema

Los archivos de /etc pertenecen al administrador. Un usuario común puede abrirlos y leerlos, pero al guardar, el editor informa que no tiene permiso. Para modificarlos se inicia el editor con sudo:

terminal
$ sudo nano /etc/hosts

Cómo funciona sudo es el tema 19. Lo que corresponde decir aquí es cómo editar configuración sin romper nada, porque un archivo de sistema mal escrito puede impedir que un servicio arranque, o que arranque el equipo:

  1. Copiar antes. sudo cp -a /etc/hosts /etc/hosts.bak, como aprendimos en el tema 11. respaldo
  2. Cambiar una cosa por vez. Si algo falla, se sabe qué fue. editar
  3. Comentar en lugar de borrar. Anteponer # a la línea original y escribir la nueva debajo. editar
  4. Comprobar. Muchos servicios tienen una orden para validar su configuración antes de aplicarla. verificar
  5. Si algo se rompe, restaurar la copia. volver

El tercer paso se apoya en una convención casi universal: en los archivos de configuración, lo que sigue a un # se ignora. Lo vimos en el encabezado de informe.txt. Dejar la línea anterior comentada documenta el cambio y permite deshacerlo sin memoria.

Queda un asunto: qué editor abren los programas que abren uno. Lo decide una variable, EDITOR, que cada usuario puede fijar. Las variables son el tema 34; mientras tanto, Ubuntu ofrece un atajo:

terminal
$ select-editor
Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.tiny
  3. /bin/ed

Choose 1-3 [1]: 

16. Cuál usar

nanovim
Tiempo para empezarMinutosHoras para lo básico; meses para aprovecharlo
Ayuda a la vistaSí, al pie de la pantallaNo
ModosNoSí
DisponibilidadFrecuentePrácticamente universal
Para cambios chicosIdealSirve
Para editar mucho, todos los díasSe queda cortoMuy eficiente

La recomendación para este curso es clara: nano para trabajar, y el mínimo de vim para no depender de que nano esté. Si más adelante editas texto en la terminal durante horas, vim devuelve con creces el tiempo que pide. No hay una respuesta correcta; es una de las discusiones más antiguas, y más inútiles, de la informática.

Las dos tarjetas de referencia:

Quiero…En nanoEn vim, desde el modo normal
EscribirEscribiri, y al terminar, Esc
GuardarCtrl+O, Enter:w
SalirCtrl+X:q
Guardar y salirCtrl+X, Y, Enter:wq
Salir sin guardarCtrl+X, N:q!
BuscarCtrl+W/texto
Ir a la línea 42Ctrl+_, 42:42
Borrar una líneaCtrl+Kdd
PegarCtrl+Up
DeshacerAlt+Uu

El directorio de práctica tiene desde ahora un archivo más, tareas.txt, con cinco líneas. Lo conservamos.

En el tema 14 volvemos sobre una idea que quedó pendiente dos veces: los inodos y la columna de enlaces de ls -l. Veremos cómo un mismo archivo puede tener varios nombres, y qué son esos enlaces simbólicos que encontramos en /bin.

17. Resumen

18. Preguntas de repaso

Intenta responder cada una antes de abrir la respuesta.

1. Menciona dos situaciones en las que no se puede evitar un editor de terminal.

Al trabajar en un servidor remoto o un sistema sin entorno gráfico, y cuando una herramienta como git, crontab -e o visudo abre un editor por su cuenta y espera a que se lo cierre.

2. En la pantalla de nano se lee ^O y M-U. ¿Qué teclas son?

Ctrl+O y Alt+U. El acento circunflejo representa la tecla Ctrl, y M-, la tecla Alt.

3. ¿Cómo se guarda y se sale en nano?

Ctrl+O y Enter para guardar, y Ctrl+X para salir. O directamente Ctrl+X, respondiendo Y y Enter a la pregunta.

4. Hiciste cambios en nano y quieres descartarlos. ¿Cómo?

Ctrl+X, y a la pregunta de si guardar, responder N.

5. ¿Cómo se busca un texto y cómo se borra una línea en nano?

Se busca con Ctrl+W, y con Alt+W se repite la búsqueda. Una línea se borra cortándola con Ctrl+K.

6. ¿Qué pasa si pulsas Ctrl+Z dentro de nano?

No deshace. En muchas versiones suspende el editor y devuelve la shell; se vuelve a él con el comando fg. Para deshacer se usa Alt+U.

7. Abres vim, escribes y ocurren cosas extrañas en lugar de aparecer el texto. ¿Por qué?

Porque vim empieza en modo normal, donde cada tecla es una orden. Para escribir hay que pasar antes al modo de inserción, con i.

8. ¿Qué hace la tecla Esc en vim?

Vuelve al modo normal desde cualquier otro modo. Pulsarla de más no tiene efecto, por lo que es el recurso cuando no se sabe en qué modo se está.

9. ¿Qué diferencia hay entre :q, :wq y :q!?

:q sale, y falla si hay cambios sin guardar. :wq guarda y sale. :q! sale descartando los cambios.

10. ¿Cuál es la secuencia para salir de vim pase lo que pase?

Esc, y luego :q! y Enter.

11. En vim, ¿cómo se borra una línea, cómo se la pega en otro lugar y cómo se deshace?

En modo normal: dd borra la línea y la guarda, p la pega debajo de la línea donde esté el cursor, y u deshace el último cambio.

12. ¿Qué hace :%s/rojo/azul/g?

Reemplaza rojo por azul en todas las líneas del archivo y en todas las apariciones de cada línea.

13. vim responde «E37: No write since last change». ¿Qué significa?

Que se intentó salir con :q habiendo cambios sin guardar. Se sale con :wq para conservarlos o con :q! para descartarlos.

14. ¿Qué precauciones conviene tomar al editar un archivo de /etc?

Hacer antes una copia del original, cambiar una sola cosa por vez, comentar la línea anterior con # en lugar de borrarla, y comprobar el resultado.

15. ¿Por qué conviene saber lo básico de vim aunque se use nano?

Porque vim, o vi, está en prácticamente todos los sistemas, incluidos los que no tienen nano, y porque muchas herramientas lo abren por defecto.

Para practicar

  1. Abre tareas.txt con nano -l. Mueve la tercera línea al final con Ctrl+K y Ctrl+U, deshaz el cambio con Alt+U, y sal sin guardar.
  2. En /tmp, crea con nano un archivo con diez líneas cualesquiera. Practica: ir a la línea 7, buscar una palabra, reemplazarla en todo el archivo, y guardar con otro nombre.
  3. Crea tu ~/.nanorc con set linenumbers y comprueba el efecto al abrir cualquier archivo.
  4. Copia ~/practica/informe.txt a /tmp y ábrelo con nano. Busca https, y averigua con Ctrl+C en qué línea está.
  5. Abre vim sin ningún archivo, escribe dos líneas, y guárdalas con :w /tmp/prueba-vim.txt. Sal con :q.
  6. Abre /tmp/prueba-vim.txt con vim. Duplica la primera línea con yy y p, borra la última con dd, deshaz todo con u, y sal con :q!. Comprueba con cat que el archivo no cambió.
  7. En la copia de informe.txt de /tmp, abierta con vim: activa los números de línea, ve a la línea 100, vuelve a la primera, busca ssh y reemplaza todos los tcp por TCP. Sal sin guardar.
  8. Abre con vim el archivo /etc/hostname, sin sudo. Intenta modificarlo y guardarlo, lee el mensaje, y sal.
  9. Abre el mismo archivo en dos terminales a la vez con vim y lee el aviso que aparece en la segunda. Sal de las dos sin cambiar nada.
  10. Instala vim y completa la primera lección de vimtutor es.