Qualche volta vi capiterà di scrivere un lungo comando in bash e, prima di premere , di accorgervi di un errore di battitura all'inizio della riga. Potreste cancellare tutto e tornare indietro e riscrivere tutto correttamente, ma questo richiede un bello sforzo! Potete invece premere i tasti freccia per tornare indietro, eliminare i caratteri errati, ed inserire quelli corretti.
Ci sono molti tasti speciali per modificare le linee di comando; molti sono simili ai comandi di GNU Emacs . Per esempio, scambia due caratteri adiacenti. Troverete molti di questi comandi nel capitolo di Emacs, il capitolo .
Un'altra caratteristica di bash è il completamento automatico della linea di comando. Diamo un'occhiata al seguente esempio di un tipico comando cp:
È una gran fatica dover inserire ogni carattere di un-file-lunghissimo ogni volta che dovete accedervi. Create un-file-lunghissimo copiandolo da /etc/passwd, e andiamo a ripetere lo stesso comando cp in un modo molto più veloce e con poche possibilità di errore.
Invece di inserire il nome per intero, digitate cp un, e premete e rilasciate il tasto . Come per magia, il resto del nome viene mostrato nella riga di comando e potete inserire corto. Sfortunatamente, bash non può leggervi nel pensiero, e dovete inserire corto completamente.
Quando digitate , bash guarda cosa avete scritto, e cerca un file che inizi nello stesso modo. Per esempio, se scrivo /usr/bin/ema e premo , bash troverà /usr/bin/emacs, che è il solo file che comincia con /usr/bin/ema nel mio sistema. Comunque, se scrivessi /usr/bin/ld e premessi , bash emetterebbe un suono di avviso, perché nel mio sistema ci sono tre file che cominciano con /usr/bin/ld: /usr/bin/ld, /usr/bin/ldd e /usr/bin/ld86.
Se provando il completamento automatico sentite un suono, potete premere di nuovo per ottenere la lista di tutti i file che iniziano in quel modo. Così, se non siete sicuri del nome esatto di un file, potete iniziare a scriverlo e cercare in lista di nomi più ristretta.