Inicio > Procesamiento y búsqueda de texto > ex

ex: Editor de texto basado en líneas

ex es el modo basado en líneas del editor Vi IMproved (Vim), utilizado principalmente para scripts o procesamiento de texto automatizado. Ofrece potentes funciones para editar líneas específicas de un archivo o modificar varios archivos de forma masiva, y es más adecuado para scripting no interactivo que para uso interactivo.

Descripción general

ex es el modo de comandos basado en líneas del editor Vi. Es muy útil para procesar el contenido de un archivo línea por línea o para realizar transformaciones de texto complejas utilizando expresiones regulares. Es una herramienta potente, especialmente cuando se modifican archivos automáticamente dentro de scripts de shell.

Características principales

  • Edición de texto basada en líneas
  • Optimizado para scripts y tareas automatizadas
  • Potente soporte para expresiones regulares
  • Utiliza el mismo conjunto de comandos que Vi/Vim
  • Soporte para modo no interactivo

Opciones principales

ex ejecuta comandos principalmente dentro de un archivo, pero proporciona algunas opciones de línea de comandos para controlar el comportamiento específico al inicio.

Opciones de inicio y modo

Comando generado:

Combina los comandos.

Descripción:

`ex` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

ex se utiliza principalmente para realizar tareas específicas dentro de scripts o para cambiar al modo de comandos de ex dentro del editor vi.

Abrir archivo e imprimir contenido

ex -s file.txt <<EOF
%p
q!
EOF

Abre el archivo en modo ex, imprime todas las líneas y luego sale.

Reemplazar y guardar cadena en el archivo

ex -s -c '%s/cadena_vieja/cadena_nueva/g | wq' file.txt

Reemplaza todas las ocurrencias de 'cadena_vieja' con 'cadena_nueva' en el archivo file.txt, guarda y sale.

Reemplazo masivo de cadenas en varios archivos

for f in *.txt; do ex -s -c '%s/error/advertencia/g | wq' "$f"; done

Reemplaza 'error' por 'advertencia' en todos los archivos .txt del directorio actual.

Eliminar una línea específica

ex -s -c '5d | wq' file.txt

Elimina la quinta línea del archivo file.txt y la guarda.

Consejos y precauciones

ex es más adecuado para scripts o tareas automatizadas que para uso interactivo, y es útil conocer algunos consejos para un procesamiento de texto eficiente.

Consejos principales

  • En scripts no interactivos, utilice siempre la opción `-s` (silencioso) para suprimir mensajes innecesarios.
  • Los comandos son los mismos que en el modo de comandos de `vi`; puede guardar y salir con `:wq` o salir sin guardar con `:q!`.
  • Las expresiones regulares se pueden utilizar de forma potente, similar a `sed`. `%s/patrón/reemplazo/g` se utiliza para reemplazar patrones en todo el archivo.
  • ex está incluido en el paquete `vi` o `vim`, que está instalado por defecto en la mayoría de los sistemas Linux.
  • Puede encadenar varios comandos ex en una sola línea utilizando el carácter de tubería (`|`).

Comandos de la misma categoría