Estoy usando las versiones predeterminadas de bash y screen en OS X Lion.
Cuando estoy en una sesión de pantalla y me desplazo hacia atrás a través del historial de bash y llego a un comando que es lo suficientemente largo como para ajustar.
Primero podría escribir algún comando:
selassid@tem02:~$ ls ljmix/fiftyfifty_softsphere/T0.350/r2.43/0.565421311859c0.1
83279836214c0.144847759343/
Eso se ajusta correctamente como se escribió anteriormente, pero si presiono hacia arriba para acceder a través del historial de bash, la consola solo muestra:
83279836214c0.144847759343/
Por lo tanto, falta el indicador y toda la primera línea del comando, lo que dificulta la edición; Si vuelvo a la primera línea, aparece pero sobrescribe la última línea de salida. Cuando ejecuto el comando, se muestra el resto de la primera línea y todo se ve como se esperaba:
selassid@tem02:~$ ls ljmix/fiftyfifty_softsphere/T0.350/r2.43/0.565421311859c0.1
83279836214c0.144847759343/
total 1792
...
selassid@tem02:~$
Lo que es más curioso, es que si uso el historial para acceder al comando largo pero aún no lo ejecuto, entonces use cualquier C-a
comando de pantalla, como cambiar a otra ventana y luego regresar, o si hago clic fuera de mi ventana de terminal actual y de nuevo en él, el comando de historial ahora se muestra correctamente nuevamente.
Mi PS1='\u@\h:\w$ '
así que no hay nada extraño pasando allí.
¿Hay alguna manera de mostrar correctamente todo el comando cuando se usa el historial? He intentado jugar con la configuración de ajuste de pantalla, pero solo empeoran las cosas.
stty -a
muestra:
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;
fuente
TERM
esxterm-256color
ytput am; echo $?
solo me da 0.stty -a
?Respuestas:
Según la respuesta al comentario anterior, parece que está anulando TERM en uno de sus scripts de inicio. Mientras está dentro de la pantalla, su TERM debe estar configurado como 'pantalla', no 'xterm-256color'.
Me gustaría ver a través de sus scripts de inicio de shell. ~ / .bashrc, / etc / bash / bashrc, y posiblemente otros como ~ / .bash_profile y / etc / profile dependiendo de cómo tenga todo configurado. Si ve alguna configuración de TERM = "...", debe eliminarlas.
fuente