it-swarm-eu.dev

PuTTY come selezionare il testo e copiare il testo usando SOLO la tastiera

C'è un modo per selezionare un testo con la tastiera nel modo in cui lo faccio normalmente usando Maiusc + frecce.

69
l245c4l

Dal manuale PuTTY :

La copia e incolla di PuTTY funziona interamente con il mouse. Per copiare il testo negli Appunti, basta fare clic con il tasto sinistro del mouse nella finestra del terminale e trascinare per selezionare il testo. Quando si rilascia il pulsante, il testo viene copiato automaticamente negli Appunti. Non è necessario premere Ctrl-C o Ctrl-Ins; in effetti, se premi Ctrl-C, PuTTY invierà a Ctrl-C Carattere la sessione verso il server dove probabilmente causerà l'interruzione di un processo.

69
Asaph

per quanto ne so, non c'è modo di copiare un'area selezionata dalla finestra PuTTY agli appunti di Windows senza usare il mouse. c'è una richiesta di funzionalità sul sito di PuTTY appositamente per questa funzionalità.

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

l'unico modo per copiare le informazioni da la finestra PuTTY agli appunti di Windows con una scorciatoia da tastiera è usare il menu di sistema dell'app "copia tutto negli appunti" ( che puoi richiamare da alt-space, a condizione che tu imposti l'opzione "Finestra> Comportamento> Menu di sistema su ALT-Spazio" configurata in PuTTY.

Incollare dagli appunti di Windows in PuTTY può essere fatto con Shift-Insert.

Se è necessario copiare e incollare solo all'interno della finestra terminale stessa, fare riferimento alla pagina man relativa alla Shell che si sta utilizzando o considerare l'utilizzo dell'app "screen" unix ("schermata man" per maggiori informazioni), che consente la selezione del testo per copia/incolla nella finestra del terminale (simile a come funziona la copia/incolla di vi). un estratto dalle pagine man:

   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 = copia

shift+insert = incolla

22
vi_dude

Per ovviare a questo problema, eseguire PuTTY in una sostituzione della console di Windows come ConEmu o SuperPutty .

3
Michael Hampton

Questo potrebbe essere più una soluzione alternativa che una soluzione.

All'interno di vim, se vuoi copiare un blocco che hai selezionato in modalità visuale (di solito un blocco che si estende su molte pagine), puoi scriverlo in un file (digitando :w filename.txt mentre il testo è selezionato e mentre sei ancora in visual modalità). Dopo averlo fatto, puoi:

  1. Apri il file in un editor di Windows se è montato su Samba
  2. Leggi il contenuto del file tramite Apache o un server FTP
  3. Invia il file come allegato (vedi comando qui sotto - richiede Mutt):

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

Personalmente preferisco l'opzione 1.

2
Homer6

Un altro suggerimento un po 'improvvisato è di attivare Mouse Keys all'interno di Windows. In Windows 7 si trova in Centro accesso facilitato.

  1. Fai clic su "Rendi il mouse più facile da usare".
  2. Seleziona la casella di controllo "Attiva i tasti del mouse".
  3. Fai clic su "Imposta tasti del mouse" per ulteriori impostazioni.

Il tasto di scelta rapida dei tasti del mouse è Alt + Shift + NumLock.

Spero che colpire questa combinazione di tasti non interferisca con la tua sessione (o semplicemente Alt + Tab fuori e attivarlo da esterno PuTTY). Credo che premendo 0 sul tastierino numerico si avvii un blocco clic, che consente di trascinare la porzione di testo che si desidera evidenziare/copiare.

2
White Phoenix

Uso lo schermo GNU,

Ho anche questo nel mio screenrc per giocare bene con vim:

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

Un mio amico ha un gancio sullo schermo per copiare gli "Appunti dello schermo" su uno o entrambi gli x clipboard (selezione o appunti) e credo che PuTTY faccia le traduzioni necessarie. Proverò a scavare.

Probabilmente puoi organizzare la stessa cosa con xclip, l'incantesimo che stai cercando dovrebbe usare xclip -selection clipboard

Mi piacerebbe testare rapidamente per vedere se xclip -selection clipboard -o sputa il contenuto degli appunti.

2
richo

Ero stanco di scorrere verso il basso riga per riga con il pulsante sinistro del mouse per copiare l'output della sessione. Ma ora, ho bisogno di cliccare su pulsante centrale due volte; prima all'inizio e seconda alla fine. Come ho fatto:

  1. Vai alla finestra Configurazione PuTTY
  2. Scegli "Selezione" dalla categoria a sinistra della finestra.
  3. Sotto 'Controlla l'uso del mouse', scegli 'Compromesso (Medio estende, Destra incolla)' se non già selezionato.
2
sedat

Lavorato su questo per un po ', e PuTTY stesso non può farti copiare con solo gli appunti.

Tuttavia, PuTTY può facilitare la trasmissione inversa dei dati dal lato remoto. Se si utilizza uno strumento come Vim o Tmux per effettuare selezioni di testo basate su tastiera, è possibile scaricare l'output su un file e (datandosi qui) netcat su un tunnel di porta inversa PuTTY su un servizio locale che esegue il dump dell'input al locale clipboard.

Ho fatto un video su come farlo qui: https://www.youtube.com/watch?v=RI79eeCuyvE , ma ecco la versione breve:

Imposta il tuo PuTTY> connessione> SSH> tunnel per inoltrare R11311 a localhost: 1234 Usa netcat come server di ascolto che invia l'output al comando clip di windows 10 che invia l'input agli appunti di Windows. Avvolgi questo in un ciclo eterno come:

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

Esegui quanto sopra in un comando Chiedi di essere eseguito come amministratore, perché stai eseguendo il bingo su una porta.

Sul server remoto * nix, è necessario utilizzare vim o Tmux per inviare selezioni di testo in un file.

Utilizzare un comando per inviare la selezione del testo a un file

tmux save-buffer ~/.clipboard

Oppure, puoi usare Vim per salvare un buffer (in questo caso, z) in un file

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

Ho integrato gli appunti di vim e tmux usando il file .clipboard come intermediario usando una funzione vim Gist .

Una volta che la selezione del testo è nel file, è possibile reindirizzare l'output al lato remoto della porta in avanti:

cat ~/.clipboard | nc 127.0.0.1 11311

O all'interno di uno script vim

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

Si noti che la e commerciale è necessaria perché non potevo ottenere il flag -q 0 di netcat per funzionare correttamente. Forse puoi. Senza farlo funzionare, aspetta un secondo prima di chiudersi, il che può interrompere il flusso del tuo lavoro. Con la e commerciale abbandona istantaneamente il processo, che termina in 1 secondo in background.

Fare tutto quanto sopra integrerà completamente le clipboard client Tmux, Vim e locali PuTTY senza toccare il mouse! Questo era l'unico modo per trovare questo.

1
Troy Fletcher