Dr. Arturo González Gutiérrez Instructor
Transcripción
Dr. Arturo González Gutiérrez Instructor
Dr. Arturo González Gutiérrez Instructor vi: Editor de pantalla universalmente disponible en todas las plataforma Potencia y versatilidad ◦ Búsquedas y sustituciones de cadenas de caracteres en ficheros con miles de líneas de realizan increiblemente rápido ◦ Se puede usar como procesador de textos básico para archivos ASCII: Con saltos de línea automáticos y otras caraterísticas propias de procesadores de texto. El editor vi opera en dos modos: ◦ El modo de comandos. ◦ El modo de entrada o introducción de texto. Modo de comandos ◦ vi interpreta como comandos lo que se teclee. P. ej.: guardar archivos, salir de vi, mover el cursos a diferentes posiciones del archivo, modificar, reordenar, eliminar, reemplazar y buscar texto (señal de alerta si se introduce un carácter que no es un comando) ◦ Comandos directos o modo de DOS puntos. Modo de introducción de texto ◦ Añadiendo texto después del cursor o insertándolo antes del cursor ◦ Para pasar de modo de comandos a modo de entrada presione a para agregar texto despues del cursor, o i para insertar texto antes del cursor. Casi todos los pgrms de proc. de palabras inician en el modo de entrada, pero vi no. Cambiar al modo de entrada oprimiendo a o i antes de comenzar a escribir texto, presione <Esc> para regresar al modo de comandos. vi: editor de pantalla clásico de Unix para crear o modificar archivos de texto $ vi archivo -llamar a vi para crear archivo ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ ◦ Insertar texto después del cursor: a Insertar texto al final de la línea: A Insertar texto antes del cursor: i Insertar texto al principio de la línea: I Abrir una línea para inserción, después de la línea actual: o Abrir una línea para inserción, antesde la línea actual: O Finalizar modo de inserción: <Esc> Unir dos líneas: J Borrar el carácter donde está el cursor: x Sustituir por c el carácter donde está el cursor: rc Sustituir carácteres por otros escritos encima, terminar con <Esc>: R Grabar archivo en el disco y terminar: :wq ZZ El cursor se desplaza con las teclas con flechas Avanzar cursor 1 palabra: w Retroceder cursor 1 palabra: b Borrar la línea donde está el cursor: dd Buscar la cadena cad hacia adelante: /cad ◦ Siguiente n; Previa N Buscar Buscar Buscar cad al principio de linea: /^cad cad al final de linea: /cad$ palabra indicada no la cadena: / \<palabra\> Desplazar cursor al principio de la pantalla: H Desplazar cursor al medio de la pantalla: M Desplazar cursor al final de la pantalla: L Buscar cadena hacia atrás: ?cadena ◦ Buscar la próxima aparición de cadena hacia atrás: n; delante N Copiar del fichero, de línea 1 a la última, y colocarlo despues de la última: ◦ :1,$t$ Mover cursor a la primera línea del archivo:1G Mover cursor a la última línea del archivo: G Mover cursor a la línea 15 del archivo:15G Borrar 10 líneas a partir de la del cursor: 10dd ◦ :11,$d Las líneas del archivo pueden numerarse consecutivamente: :set nu Eliminar números de líneas: :set nonu Mover líneas 3 a 5 y colocarlas después de la 1: :3,5m1 Marcar tres palabras con yank: y3w; pulsar p para copiar el bloque Borrar 3 palabras a partir del cursor: 3dw Borrar la palabra a la derecha del cursor: dw Borrar la palabra a la izquierda del cursor: db Borrar n palabras a la derecha del cursor: dnw Borrar n palabras a la izquierda del cursor: dnb Borrar n líneas a partir del cursor: ndd Cambiar la palabra por el texto introducido enseguida, terminar con <Esc>: cw Ejecutar de nuevo la última orden ejecutada: . Cambiar una línea entera por el texto introducido a continuación, terminar con <Esc>: cc De línea 1 a 3, sustituye cad1 por cad2, sólo la primera aparición de cad1 en cada línea: :1,3s/cad1/cad2/ De línea 1 a 3, sustituye cad1 por cad2, todas las apariciones de cad1:1,3s/cad1/ cad2/g Cambiar a por A en todo el archivo; sólo la primera aparición: :1,$s/a/A/g Deshacer el último cambio: u Regresar al último cambio: :redo Abandonar sesión de edición sin guardar cambios: :q! Visualiza todas las opciones de vi: :set all Da el número de la línea actual y nombre del archivo: <Ctrl>g Ejecuta órdenes del shell desde vi: :!comando Inserta archivo en la posición del cursor: :r archivo Crea archivo con las líneas 31 a 47: :31,47w archivo man vi