Я використовую версії bash і screen за замовчуванням в OS X Lion.
Коли я перебуваю на екрані, я прокручую історію башів, і я приходжу до команди, яка достатньо довга, щоб завершити.
Я можу спершу ввести якусь команду:
selassid@tem02:~$ ls ljmix/fiftyfifty_softsphere/T0.350/r2.43/0.565421311859c0.1
83279836214c0.144847759343/
Це завершується правильно, як написано вище, але якщо я натискаю, щоб отримати доступ до нього через історію bash, на консолі відображається лише:
83279836214c0.144847759343/
Тож підказка та весь перший рядок команди відсутні, що ускладнює редагування; якщо я прокручую назад до першого рядка, він з’являється, але він замінює останній рядок виводу. Коли я виконую команду, відображається решта першого рядка і все виглядає так, як очікувалося:
selassid@tem02:~$ ls ljmix/fiftyfifty_softsphere/T0.350/r2.43/0.565421311859c0.1
83279836214c0.144847759343/
total 1792
...
selassid@tem02:~$
Що ще цікавіше, це те, що якщо використовувати історію для доступу до довгої команди, але я її ще не виконую, то скористайтеся будь-якою C-a
командою на екрані, наприклад, перемиканням на інше вікно, а потім назад, або якщо я натискаю своє поточне вікно терміналу і повернувшись до нього, команда історії тепер знову відображається належним чином.
Моє, PS1='\u@\h:\w$ '
тому там нічого дивного не відбувається.
Чи є спосіб правильно показати всю команду при використанні історії? Я спробував грати з налаштуваннями обгортання екрана, але вони тільки погіршують ситуацію.
stty -a
показує:
speed 9600 baud; 46 rows; 80 columns;
lflags: icanon isig iexten echo echoe -echok echoke -echonl echoctl
-echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo
-extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel iutf8
-ignbrk brkint -inpck -ignpar -parmrk
oflags: opost onlcr -oxtabs -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
-dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
stop = ^S; susp = ^Z; time = 0; werase = ^W;
TERM
є xterm-256color
і tput am; echo $?
просто дає мені 0.
stty -a
?