Descripción general
ed es un editor potente pero conciso especializado en la edición de archivos de texto línea por línea. Además de su modo interactivo, puede usarse de forma no interactiva en scripts, lo que lo hace adecuado para el procesamiento automatizado de texto.
Características principales
- Edición orientada a líneas: trabaja línea por línea
- Amigable con scripts: adecuado para uso no interactivo
- Muy ligero: utiliza recursos mínimos
- Estándar POSIX: incluido por defecto en la mayoría de los sistemas Unix/Linux
Opciones principales
ed no tiene muchas opciones de línea de comandos; la mayoría de sus funcionalidades se realizan mediante comandos internos del editor.
Control de comportamiento
Comando generado:
Combina los comandos.
Descripción:
`ed` Ejecutando el comando.
Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.
Ejemplos de uso
ed se puede usar interactivamente o a través de la redirección de entrada en scripts.
Crear un archivo nuevo y añadir texto
ed newfile.txt
a
Hello, ed!
This is a test line.
.
w
q
Abre un archivo nuevo, añade texto, lo guarda y sale.
Abrir un archivo existente y ver su contenido
ed existing_file.txt
1,$p
q
Abre un archivo existente, imprime todas las líneas y sale.
Sustituir texto específico (no interactivo)
echo '1,$s/old_text/new_text/g
w
q' | ed -s my_document.txt
Sustituye todo 'old_text' por 'new_text' en el archivo y lo guarda. La opción -s suprime la salida.
Añadir contenido al final de un archivo (no interactivo)
echo '$a
New line added at the end.
.
w
q' | ed -s my_document.txt
Añade una nueva línea al final del archivo y lo guarda.
Consejos y precauciones
ed tiene un modo de uso muy diferente al de otros editores modernos, por lo que es importante comprender algunos conceptos clave.
Conceptos clave para usar ed
- **Modo de comandos y modo de entrada**: ed está fundamentalmente en modo de comandos, y entra en modo de entrada con comandos como `a` (append), `i` (insert) y `c` (change). En modo de entrada, al escribir `.` (punto) en una línea sola, se vuelve al modo de comandos.
- **Direccionamiento**: Los comandos se pueden aplicar a líneas específicas (por ejemplo, `1` para la primera línea, `$` para la última, `.` para la línea actual) o rangos de líneas (por ejemplo, `1,$` para todo el archivo).
- **Guardar y salir**: El comando `w` guarda los cambios y el comando `q` sale del editor. No admite combinaciones como `wq`. `Q` sale forzosamente sin guardar los cambios.
- **Verificar la línea actual**: Al introducir el comando `.`, se imprime el contenido de la línea actual, y el comando `=` imprime el número de la línea actual.
- **Uso de expresiones regulares**: Junto con el comando `s` (substitute), se pueden usar potentes expresiones regulares para buscar y reemplazar texto.