Encontré este comando útil bind -x '"\C-r"':resetpara borrar el terminal, pero quería hacer un script bash simple:
#!/bin/bash
bind -x '"\C-r"':reset
salida:
alfred@alfred-laptop:~/bash$ ./bind
./bind: line 2: bind: warning: line editing not enabled
¿Podría alguien explicarme:
- ¿Cómo puedo arreglar esto?
- Que
warning: line editing not enabledsignifica

echo -e '\0033\0143'gracias a superuser.com/questions/122911/bash-reset-and-clear-commands/… , pero todavía me gustaría saber qué significa este error y cómo solucionarlo. Muchas gracias.set -o emacsoset -o vien su script (antes delbind, por supuesto).Respuestas:
Necesitas obtener ese script. Haga
. ./bindosource ./bindpara activar ese enlace de teclas en la sesión actual.Al ejecutarlo normalmente, no tiene una terminal, por lo que le da ese mensaje de error. Además, si funcionara, solo estaría activo mientras dure el script.
Si desea que la combinación de teclas sea persistente, agregue ese comando a su
~/.bashrc.fuente
source.sourceo dot (.), agregue una función a su~/.bashrc:rbind () { bind -x '"\C-r"':reset; }entonces puede ingresarrbindpor a sí mismo como un comando y el enlace se activará.Tenía un mensaje similar pero el mío era de un script que se ejecutaba fuera de un shell interactivo (inicio de sesión); era un script de shell que se ejecutaba a través de un script CGI. Mi mensaje fue:
y aunque en realidad no estaba en la línea 4, el único
binden ese archivo era:lo cual, por supuesto, solo tiene sentido si la edición de línea está habilitada, es decir, si se trata de un shell interactivo.
fuente