it-swarm.com.de

PuTTY wie man Text auswählt und nur mit der Tastatur kopiert

Gibt es eine Möglichkeit, einen Text mit der Tastatur so auszuwählen, wie ich es normalerweise mit Umschalt + Pfeilen mache?.

69
l245c4l

Aus dem PuTTY-Handbuch :

Das Kopieren und Einfügen von PuTTY funktioniert vollständig mit der Maus. Um Text in die Zwischenablage zu kopieren, klicken Sie einfach mit der linken Maustaste auf das Terminalfenster und ziehen Sie, um Text auszuwählen. Wenn Sie die Taste loslassen, wird der Text automatisch in die Zwischenablage kopiert. Sie müssen nicht drücken Ctrl-C oder Ctrl-Ins; in der Tat, wenn Sie drücken Ctrl-C, PuTTY sendet eine Ctrl-C Zeichne deine Sitzung auf den Server, wo es wahrscheinlich dazu kommt, dass ein Prozess unterbrochen wird.

69
Asaph

soweit ich weiß, gibt es keine Möglichkeit, einen ausgewählten Bereich aus dem PuTTY-Fenster in die Windows-Zwischenablage zu kopieren, ohne die Maus zu verwenden. Auf der PuTTY-Site gibt es eine Funktionsanforderung speziell für diese Funktionalität.

http://www.chiark.greenend.org.uk/~sgtatham/PuTTY/wishlist/keyboard-copy.html

die einzige Möglichkeit, Informationen aus dem PuTTY-Fenster mit einer Tastenkombination in die Windows-Zwischenablage zu kopieren, ist die Verwendung des App-Systemmenüs "Alle in die Zwischenablage kopieren" ( Diese Option können Sie aus dem Alt-Space aufrufen, sofern Sie die in PuTTY konfigurierte Option "Fenster> Verhalten> Systemmenü wird in ALT-Space angezeigt" ausgewählt haben.

Das Einfügen aus der Windows-Zwischenablage in PuTTY kann mit erfolgen Shift-Insert.

Wenn Sie nur innerhalb des Terminalfensters selbst kopieren und einfügen müssen, lesen Sie entweder die Manpage für die von Ihnen verwendete Shell oder ziehen Sie die Verwendung der Unix-App "screen" in Betracht ("man screen" für weitere Informationen), mit der Sie Text auswählen können Zum Kopieren/Einfügen innerhalb des Terminalfensters (ähnlich wie beim Kopieren/Einfügen von VI). ein Auszug aus den Manpages:

   C-a esc     (copy)        Enter copy/scrollback mode.

   C-a ]       (paste .)     Write the contents of the paste buffer to the
                             stdin queue of the current window.

   C-a {
   C-a }       (history)     Copy and paste a previous (command) line.

   C-a >       (writebuf)    Write paste buffer to a file.

   C-a <       (readbuf)     Reads the screen-exchange file into the paste
                             buffer.

   C-a =       (removebuf)   Removes the file used by C-a < and C-a >.
26
ives

control+insert = kopieren

shift+insert = einfügen

22
vi_dude

Führen Sie PuTTY in einem Windows-Konsole-Ersatz wie ConEmu oder SuperPutty aus, um dieses Problem umzugehen.

3
Michael Hampton

Dies ist möglicherweise eher eine Problemumgehung als eine Lösung.

Wenn Sie in vim einen Block kopieren möchten, den Sie im visuellen Modus ausgewählt haben (normalerweise einen Block, der viele Seiten umfasst), können Sie ihn in eine Datei schreiben (indem Sie :w filename.txt eingeben, während der Text ausgewählt ist und Sie sich noch im visuellen Modus befinden) Modus). Sobald Sie das getan haben, können Sie:

  1. Öffnen Sie die Datei in einem Windows-Editor, wenn sie über Samba eingehängt ist
  2. Lesen Sie den Dateiinhalt über Apache oder einen FTP-Server
  3. Senden Sie die Datei als Anhang per E-Mail (siehe Befehl unten - erfordert Mutt):

    echo "My Message Body" | mutt -s "my subject line" -a filename.txt -- [email protected]
    

Persönlich bevorzuge ich Option 1.

2
Homer6

Ein weiterer, etwas provisorischer Vorschlag ist, Maustasten in Windows zu aktivieren. In Windows 7 ist es unter dem Ease of Access Center.

  1. Klicken Sie auf "Machen Sie die Maus einfacher zu bedienen".
  2. Aktivieren Sie das Kontrollkästchen "Maustasten einschalten".
  3. Klicken Sie auf "Maustasten einrichten", um weitere Einstellungen vorzunehmen.

Der Standard-Tastaturbefehl für Maustasten lautet Alt + Shift + NumLock.

Wenn Sie diese Tastenkombination hoffentlich nicht drücken, wird Ihre Sitzung (oder auch nur) nicht beeinträchtigt Alt + Tab raus und aktiviere es von außerhalb von PuTTY). Ich glaube, das Drücken von 0 auf dem Nummernblock startet eine Klick-Sperre, mit der Sie über den Teil des Texts ziehen können, den Sie hervorheben/kopieren möchten.

2
White Phoenix

Ich benutze GNU Bildschirm,

Ich habe auch dieses in meinem screenrc, um nett mit vim zu spielen:

register [ "\033:se paste\015a"
register ] "\033:se nopaste\015a\033"
bind ^] paste [.]

Ein Freund von mir hat einen Haken im Bildschirm, um die "Bildschirm-Zwischenablage" in eine oder beide der x Zwischenablagen (Auswahl oder Zwischenablage) zu kopieren, und ich glaube, PuTTY erledigt die erforderlichen Übersetzungen. Ich werde versuchen, es auszugraben.

Sie können wahrscheinlich dasselbe mit xclip arrangieren. Die gesuchte Beschwörung sollte xclip -selection clipboard verwenden.

Ich würde schnell testen, ob xclip -selection clipboard -o den Inhalt Ihrer Zwischenablage ausspuckt.

2
richo

Ich hatte es satt, Zeile für Zeile mit der linken Maustaste nach unten zu scrollen, um die Sitzungsausgabe zu kopieren. Aber jetzt muss ich auf mittlere Taste zweimal klicken; zuerst am Anfang und zweitens am Ende. Wie ich gemacht habe:

  1. Gehen Sie zum PuTTY-Konfigurationsfenster
  2. Wählen Sie "Auswahl" aus der Kategorie auf der linken Seite des Fensters.
  3. Wählen Sie unter 'Maussteuerung' die Option 'Kompromittieren (mittlere Ausdehnung, rechte Einfügung)', falls nicht bereits ausgewählt.
2
sedat

Wir haben eine Weile daran gearbeitet, und PuTTY selbst kann nicht zulassen, dass Sie nur mit der Zwischenablage kopieren.

PuTTY kann jedoch die umgekehrte Übertragung von Daten von der Remote-Seite ermöglichen. Wenn Sie ein Tool wie Vim oder Tmux verwenden, um auf der Tastatur basierende Textauswahlen zu treffen, können Sie die Ausgabe in eine Datei und (ich datiere hier) netcat in einen PuTTY-Reverse-Port-Tunnel zu einem lokalen Dienst verschieben, der die Eingaben in den lokalen Dienst überträgt Zwischenablage.

Ich habe hier ein Video dazu gemacht: https://www.youtube.com/watch?v=RI79eeCuyvE , aber hier ist die Kurzversion:

Stellen Sie PuTTY> connection> SSH> tunnel ein, um R11311 an localhost weiterzuleiten: 1234 Verwenden Sie netcat als Listening-Server, der die Ausgabe an den Windows 10-Befehl clip weiterleitet, der Eingaben an die Windows-Zwischenablage sendet. Wickle dies in eine ewige for-Schleife wie folgt:

for /L %N IN () do nc -lp 1234 | clip

Führen Sie die obigen Anweisungen in einer Eingabeaufforderung aus, die Sie als Administrator ausführen, da Sie sich auf einen Port ausrichten.

Auf dem entfernten * nix-Server müssen Sie vim oder Tmux verwenden, um eine Textauswahl an eine Datei zu senden.

Verwenden Sie einen Befehl, um Ihre Textauswahl an eine Datei zu senden

tmux save-buffer ~/.clipboard

Sie können auch Vim verwenden, um einen Puffer (in diesem Fall z) in einer Datei zu speichern

silent! redir! > ~/.clipboard
silent! echo @z
silent! redir END

Ich binde die vim- und tmux-Zwischenablagen mithilfe der .clipboard-Datei als Vermittler mithilfe einer vim-Funktion ein Gist .

Sobald sich Ihre Textauswahl in der Datei befindet, können Sie die Ausgabe an die Remote-Seite des Ports weiterleiten:

cat ~/.clipboard | nc 127.0.0.1 11311

Oder in einem VIM-Skript

silent! !cat ~/.clipboard | nc 127.0.0.1 11311 &

Beachten Sie, dass das kaufmännische Und erforderlich ist, da ich das -q 0-Flag von netcat nicht ordnungsgemäß verwenden konnte. Vielleicht können Sie. Wenn es nicht funktioniert, wartet es eine volle Sekunde, bevor es geschlossen wird, was den Arbeitsfluss unterbrechen kann. Mit dem kaufmännischen Und wird der Vorgang sofort abgebrochen, der im Hintergrund in 1 Sekunde abgeschlossen ist.

Wenn Sie alle oben genannten Schritte ausführen, werden die Zwischenablagen von Tmux-, Vim- und lokalen PuTTY-Clients vollständig integriert, ohne dass Sie eine Maus berühren müssen! Dies war der einzige Weg, den ich finden konnte, um dies zu tun.

1
Troy Fletcher