Apro un terminale xterm (80 colonne x 24 righe), quindi eseguo $ bash --norc --noprofilee quindi $ ttyper ottenere il nome del file del terminale: l'output è /dev/pts/9.
Da un altro terminale corro:
$ printf foo >/dev/pts/9
fooè stampato sulla riga di comando della shell nel primo terminale.
Se premo C-uper eseguire unix-line-discard(nome della funzione fornita da $ bind -P | grep -i c-u), foonon viene rimosso.
Se inserisco 11 spazi e premo C-u, gli spazi vengono rimossi ma non foo.
Se inserisco 12 spazi e premo C-u, anche gli spazi vengono rimossi foo.
Perché non riesco a rimuoverlo fooquando premo C-umentre il cursore si trova subito dopo di esso, e perché devo inserire 12 caratteri per rimuoverlo?
Ambiente:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.6 LTS
Release: 16.04
Codename: xenial
$ bash --version | head -n1
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)
$ xterm -version
XTerm(322)

$ printf 'some text', posso riprodurre su bash 5.0 senza--norc --noprofileinserire 17 caratteri o più.