Ir al contenido principal

Comandos para manejar VIM

S

i estamos utilizando Linux y queremos editar cualquier archivo desde el modo consola, podemos utilizar varios editores. En este caso vamos a aprender a manejar el VIM, ya que es de los más potentes de los que dispone el S.O.


Lo primero que debemos saber es que dispone de dos modos de uso:


• Cuando editamos un fichero se abre el editor en modo normal desde el que podemos introducir atajos para realizar operaciones. Es un modo de visualización del contenido y no de edición, es decir, no nos permite realizar modificaciones.


• Para comenzar a editar, y por tanto entrar al modo de edición, debemos teclear la secuencia i o pulsar la tecla insert.


Una vez que nos encontramos en modo editor podemos comprobar que nos muestra las palabras/caracteres en diferentes colores. Esto se debe a que detecta automáticamente, por el tipo de contenido, el lenguaje en que está escrito el archivo.


En caso de que nuestro vim no disponga de esta faceta, puede que se daba a que se encuentra instalada una versión básica del editor. Esto se soluciona instalando la versión completa, con el comando:


Aptitude install vim-common

y escribiendo en el modo normal del vim :syntax on


En este punto es interesante que conocer alguno de los comandos más utilizados:


• Opciones de texto (modo normal)


o May+v == Seleccionar texto


o dd == Eliminar la línea actual


o u == Deshacer el último cambio


o CRTL+R == Rehacer el último cambio


o guu == Convertir a minúsculas la línea actual


o gUU == Convertir a mayúsculas la línea actual


o gg == Posicionarse al inicio del fichero


o G == Posicionarse al final del fichero


o :num == colocarse en la línea num


o ga == Muestra el código ASCII, hexadecimal y octal del carácter actual


• Guardar y salir (modo normal)


o :q == Salir del editor sin guardar


o :q! == Salir del editor sin guardar ni pedir confirmación


o :wq == Guardar y Salir del editor


o :w fich.txt == Guarda en un fichero llamado fich.txt


o :e fich.txt == Cierra el fichero actual y abre el fich.txt


• Comandos útiles (modo normal)


o x == borrar caracter


o :%s/texto_1/texto_2/ == sustituir texto


o /texto_a_buscar/ == Buscar texto (si pulsamos “n” buscara la siguiente coincidencia)


• Preferencias por defecto (modo normal)


o :set ts=num == fijar tabulados en num espacios


o :set sw=num == fijar indexados en num espacios


o :set number/nonumber == numerado de ficheros


o :set backup/nobackup == Copia de seguridad automática


o :set directory=dir == Carpeta de las copias


o :syntax on/off == Resaltado de sintaxis


o :color {evening/darkblue/desert/elflord/ koehler/morning} == Cambiar color


o :set cindent == Indentado automático


o :set mouse=a/mouse= == Uso del ratón


o :set paste/nopaste == Modo pegar texto


o :spell == Corrector ortográfico


o :setlocal spell spelllang=es == Cambiar idioma


o :set spellfile=~/.vimdic == Diccionario de palabras desconocidas


• Más comandos


o :!comando == Ejecutar un comando


o :shell == Pausar la edición (para volver al editor escribir exit)


o :set number == Muestra las líneas numeradas


Seguro que muchos de vosotros conocéis más comandos, por lo que os animo a que compartáis vuestros conocimientos con todos nosotros.


Comentarios

Entradas populares de este blog

Exportar archivo de configuración de WinSCP

S i estamos trabajando con WinSCP seguro que ya hemos guardado distintas sesiones para acceder a ellas directamente en futuras ocasiones y evitar volver a introducir todos los parámetro de configuración. Seguro que también muchos de vosotros habéis agrupado las sesiones en carpetas dependiendo de la naturaleza de las mismas. Este trabajo ocupa un valioso tiempo que no nos podemos permitir repetirlo para todos los equipos que tenemos, por lo que lo más lógico es configurar todas las sesiones y exportar su configuración al resto de equipos , teniendo una sola versión y evitarnos tener que volver a configurar todas las sesiones en cada uno. El problema es que WinSCP no nos muestra la opción de exportar de una forma sencilla, por lo que tendremos que buscarnos la vida. Lo primero que debemos hacer es abrir el programa y acceder a Preferencias -> Almacenamiento (o su equivalente al inglés) En esta pantalla deberemos indicar que almacene la configuración en un archivo

Asignar valores por defecto a input=”file” y a textarea

S eguro que muchos os habéis estado rompiendo la cabeza buscando la forma de dar un valor por defecto a el tipo de dato input=”file” . Pues que sepáis que no se puede!!! No se puede dar un valor por defecto a los campos de este tipo, ya que hacen referencia a una ruta física local y podrían surgir problemas de seguridad. Lo que se puede hacer, por ejemplo, es mostrar la imagen o el nombre del dato que tenemos almacenado y si el usuario desea modificarla, ofrecerle la opción de cargar una nueva. La etiqueta textarea , aunque pueda parecérnoslo, no se trata de un input y para darle valor por defecto simplemente debemos mostrar el texto que deseemos entre su marca de apertura y de cierre. Es decir, en caso de que lo que deseemos mostrar por defecto sea una variable, introduciremos el siguiente código: <textarea id="txtobservaciones" name="txtobservaciones" rows="2" cols="40" class="txt" ><?=$_POST["txtobservaciones"] ?&

Configuración de archivo de Logs para IpTables

I pTables se usa para configurar, mantener e inspeccionar las tablas de reglas de filtrado de IPs en el kernel de Linux, pero por defecto, su sistema de logs no es todo lo completo esperamos. Por defecto, la mayoría de los logs del sistema se guardan en el fichero /var/log/messages pero en este caso vamos a configurar un nuevo fichero para que almacene únicamente los logs que generaremos con algunas reglas en IpTables , creando así su propio archivo de bitácora . Lo primero que debemos hacer es configurar el archivo /etc/syslog.conf , que se trata de un archivo de configuración en el que se indica el modo en que los mensajes del sistema son bitacorizados a través de la utilidad syslogd que se instala y configura por defecto en todos los sistemas GNU/Linux . Debemos añadir al final del fichero la siguiente sentencia: kern.warning /var/log/iptables.log Con esto indicamos que se almacenen los mensajes provienen del kernel con prioridad 4 o superior ('warning' es el nivel de