У меня есть старое поле RedHat, на котором я должен получить некоторую работу, сделанную:
$ lsb_release -a
LSB Version: 1.3
Distributor ID: RedHatEnterpriseWS
Description: Red Hat Enterprise Linux WS release 4 (Nahant Update 7)
Release: 4
Codename: NahantUpdate7
Я испытываю серьезные затруднения из-за приглашения оболочки. (удар), В частности, если я ввожу следование командной строки:
$ abcdefghijklmnopqrstuvwxyz
... затем, если я стрелка назад к m
символ, например, и нажатие Delete
, Я получаю это:
$ abcdefghijkLMNopqrstuvwxyz
(Но это ухудшается. Если я затем стрелка вокруг больше, это только зеркально отражает одну букву за один раз.)
Я сравнил мой stty
настройки с машиной Ubuntu, где это хорошо работает, и я не вижу значительной разницы. Они следующие:
$ stty -a
speed 38400 baud; rows 58; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;
lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -ixon -ixoff
-iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
Это сводит меня с ума. Есть ли что-либо еще, что я должен искать? Что могло возможно вызывать это?
Это имеет смысл теперь...
Была случайная строка в .profile
мое использование компании, так как много людей все еще использует ksh
:
set -o vi
Ну, угадайте то, что происходит в vi
если Вы вводите ~
? Правильно, это подкачивает случай! И угадайте то, что происходит, если Вы вводите 3~
? Это подкачивает случай 3 символов! (Хотя я не все еще, несомненно, теперь объясню непоследовательное поведение, где иногда оно подкачивает один, и иногда оно подкачивает 3...),
В любом случае, удаление set -o vi
от моего .profile решил проблему.
Есть ли a .inputrc
файл в Вашем корневом каталоге? В противном случае попытайтесь создать один с этим содержанием:
"\e[3~": delete-char
Если существует такой файл, возможно, он делает что-то, что он не должен делать?