Ich öffne ein xterm-Terminal (80 Spalten x 24 Zeilen), führe dann aus $ bash --norc --noprofileund $ ttyerhalte dann den Dateinamen des Terminals: Die Ausgabe ist /dev/pts/9.
Von einem anderen Terminal aus starte ich:
$ printf foo >/dev/pts/9
foowird in der Shell-Befehlszeile im ersten Terminal gedruckt.
Wenn ich C-uzum Ausführen drücke unix-line-discard(Name der Funktion von $ bind -P | grep -i c-u), foowird nicht entfernt.
Wenn ich 11 Leerzeichen einfüge und drücke C-u, werden die Leerzeichen entfernt, aber nicht foo.
Wenn ich 12 Leerzeichen einfüge und drücke C-u, werden auch die Leerzeichen entfernt foo.
Warum kann ich nicht entfernen, foowenn ich drücke, C-uwährend sich mein Cursor direkt dahinter befindet, und warum muss ich 12 Zeichen eingeben, um es zu entfernen?
Umgebung:
$ 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'kann ich auf Bash 5.0 reproduzieren, ohne--norc --noprofiledass ich 17 Zeichen oder mehr einfüge.