Doppelte Zeilenumbrüche beim Kopieren in die Konsole auf xrdp

536
Stem

am anfang tut mir leid für mein schlechtes englisch. Dieses Problem macht mich verrückt ... Ich habe einen Debian-Jessie-Server, und ich arbeite daran mit X11-Xrdp von meinem Win10-Rechner aus. Wenn ich aus Windows kopiere und in der Konsole (oder in einem anderen Terminal) in einer rdp-Sitzung einfüge, erhalte ich eine zusätzliche Zeile pro Zeile. Zum Beispiel beim Einfügen:

echo echo echo 

Ich bekomme

root@lismall:~$ echo enter code here  root@lismall:~$  root@lismall:~$ echo  root@lismall:~$  root@lismall:~$ echo 

Wenn ich dasselbe in vim mache, nachdem ich ": set list" gesetzt habe, sehe ich folgendes:

echo$ $ echo$ $ echo$ 

Wenn ich die gleichen Zeilen in einen Tex-Editor (zum Beispiel Medit) einfüge, ist das in Ordnung, kein doppelter Zeilenvorschub.

Dies ist meine "stty -a" -Ausgabe:

speed 38400 baud; rows 48; columns 192; line = 0; intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0; -parenb -parodd -cmspar cs8 -hupcl -cstopb cread -clocal -crtscts -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl ixon -ixoff -iuclc -ixany imaxbel -iutf8 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 

Kannst du mir bitte Helfen? Danke im Voraus!

1
Der Grund ist, dass Windows eine CR-LF-Sequenz für das Zeilenende verwendet, im Gegensatz zur CR in Linux. Ihr Texteditor ignoriert LF, das Terminal nicht. Ich weiß nicht, wie man dieses Verhalten ändern kann. In einigen Fällen müssten Sie Zeilenenden konvertieren, in anderen jedoch nicht. dirkt vor 7 Jahren 1
Dasselbe Problem, wenn ich von einem Ubuntu-Rechner kopiere und in eine X11-RDP-Sitzung auf einem Debian-Server einfüge, die mit rdesktop geöffnet wurde ... Stem vor 7 Jahren 0
Dann stellt sich die Frage, * was * Sie von der Ubuntu-Maschine kopiert haben. Wenn es sich beispielsweise um eine DOS- oder Windows-Datei in einem Editor handelt, enthält diese auch CR LF-Zeilenenden. Sie können mit `xclip -o | überprüfen, was tatsächlich eingefügt wird hexdump -C`, wobei CR 0d ist und LF 0a ist. Unter Linux sollte nur "0a" angezeigt werden (dh LF, nicht CR, wie ich oben falsch geschrieben habe). Wenn Sie nur "0a" sehen und immer noch zwei Leitungen im Terminal erhalten, ist etwas anderes falsch. dirkt vor 7 Jahren 0
Von Ubuntu kopiere ich 3 zufällige Terminallinien und sehe nur "0a": Stem vor 7 Jahren 0
00000000 6d 6e 74 79 37 40 41 43 41 36 34 36 2d 6c 69 6e | mnty7 @ ACA646-lin | 00000010 75 78 3a 7e 24 20 0a 6d 6e 74 79 37 40 41 43 41 | ux: ~ $ mnty7 @ ACA | 00000020 36 34 36 2d 6c 69 6e 75 78 3a 7e 24 20 0a 6d 6e | 646-linux: ~ $ .mn | 00000030 74 79 37 40 41 43 41 36 34 36 2d 6c 69 6e 75 78 | ty7 @ ACA646-linux | 00000040 3a 7e 24 |: ~ $ | 00000043 Stem vor 7 Jahren 0
An diesem Punkt glaube ich, dass beim Einfügen in x11-RDP-Sitzungen etwas nicht stimmt ... Stem vor 7 Jahren 0

1 Antwort auf die Frage

0
parkydr

Ihre Stty-Ausgabe wird angezeigt -icrnl (Wagen nicht in Zeilenumbruch übersetzen)

Versuchen stty icrnl