Overwraping lines when using ssh by osx terminal

0

Używam sshpolecenia z terminala osx do połączenia mojego zdalnego serwera Centos. Jeśli wpisuję długi ciąg i chcę przejść do następnego wiersza, znaki nie przechodzą do drugiego wiersza, ale wracają do pierwszego wiersza po lewej stronie. I owijają ciągi znaków.

Na przykład chcę pisać w ten sposób.

[nazwa użytkownika @ nazwa hosta ~] komenda loooooooooooong i argumenty, które nadchodzą

do drugiej linii

Ale tak się kończy.

na drugą komendę ~] loooooooooooong i kolejne argumenty

Czy istnieje sposób na uniknięcie tego nadmiernego zawijania?

żelazko i piasek
źródło

Odpowiedzi:

2

Zwykle dzieje się tak, gdy monit zawiera znaki niedrukowalne, które nie są otoczone przez \[i \].

Na przykład użyj PS1='\[\e[33;1m\]\W\[\e[m\] 'zamiast PS1='\e[33;1m\W\e[m '.

Lri
źródło
Dzięki! Byłem używany jak `ZIELONY =" 0; 32 "START_COLOR =" \ e [$ {ZIELONY} m "END_COLOR =" \ e [0m "PS1 =" $ {START_COLOR} [\ u @ SakuraVPS \ W $] $ { END_COLOR}] ”
ironsand
Przepisywanie jest jak GREEN="0;32" START_COLOR="\e[${GREEN}m" END_COLOR="\e[0m" PS1="\[${START_COLOR}\u@SakuraVPS \W$ ${END_COLOR}\]", wtedy owijanie zostaje rozwiązane. Ale zdarza się inny problem, kiedy uderzam w znak i usuwam charactor, a następnie ciągi znaków zachęty również usuwane. dlaczego tak się dzieje
ironsand
0

Zdarza się to czasami, a resetpolecenie (uruchamiane na zdalnym hoście) zwykle przywraca mi zawinięte linie.

miken32
źródło