Come copiare e incollare il testo nella shell bash di Linux

Contenuti

Concetto di un terminale Linux pieno di testo su un laptop.

Vuoi copiare e incollare nella riga di comando della shell bash?? Ti mostreremo più tecniche, se preferisci la tastiera o il mouse. Funzionano sia su un desktop grafico che su un tradizionale TTY basato su testo.

Le solite scorciatoie da tastiera non funzioneranno

Copiare e incollare il testo è una parte fondamentale dell'utilizzo di un computer. Quando le persone usano un computer Linux per la prima volta, che provengano dal mondo Windows o da macOS, spesso si confondono quando provano a copiare e incollare all'interno di una finestra di terminale.

In Windows, usa Ctrl+C per copiare una sezione del testo evidenziato e Ctrl+V attaccarlo. Su macOS, usa Command+C per copiarlo e Command+V attaccarlo. Seguono la stessa convenzione di C copiare e V inserire.

Quelle stesse sequenze di tasti funzionano nella maggior parte delle applicazioni grafiche Linux, come editore gedit o la LibreOffice ufficio.Ctrl+C copia il testo evidenziato e Ctrl+V incollalo sul cursore. Il nostro nuovo arrivato a Linux probabilmente non pensa nemmeno al fatto che queste convenzioni siano state applicate a queste applicazioni. Usano le sequenze di tasti della memoria muscolare e continuano il loro lavoro.

Una volta che il nostro nuovo arrivato apre una finestra di terminale e prova a copiare e incollare nel Bash shell simbolo del sistema, tutto ciò che cambia. Ctrl+C e Ctrl+V I ruoli sono stati assegnati loro molto prima che si pensasse al copia e incolla. In realtà, quei tasti sono stati reclutati molto prima che venissero inventati i casi grafici, quando un ticker (TTY) era qualcosa di fisico.

Ctrl + C y Ctrl + V e TTY

Quando un TTY era un dispositivo fisico, Ctrl+C è stata scelta come pratica combinazione di tasti per generare un segnale. Quel segnale è SIGINT, che dice alla procedura corrente di finire. Perché una finestra di terminale è un TTY emulato, quella combinazione di tasti (e molti altri) è stato preservato e replicato in emulazione. Nota che è il finestra del terminale questa è l'emulazione. La shell Bash è un programma che gira su quel TTY emulato.

Possiamo facilmente vedere le funzioni che sono state assegnate a Ctrl+C e Ctrl+V. Supponiamo di digitare il seguente comando e premere “accedere”.

ls -R /

Perché stiamo usando il -R (ricorsivo) opzione il ls Il comando inizierà a elencare tutti i file e le directory, a partire dalla directory principale. Dopo un paio di istanti, ti rendi conto che questo non è quello che volevi, quindi termini la procedura premendo Ctrl+C.

Ctrl+C

il ls la procedura finisce. La prova visibile di Ctrl+C è evidenziato nello screenshot. Viene mostrato come ^C.

il Ctrl+V richiama la combinazione di tasti “inserimento letterale”. Ciò ti consente di inserire una rappresentazione di una chiave in ciò che stai digitando, invece di ottenere il effetto della chiave. Per vedere questo, prova i seguenti comandi (non scrivere le virgole). (Come esempio, per testare il primo, pressione Ctrl + V e poi premi Invio).

Ctrl+V, accedere
Ctrl+V, PgDn
Ctrl+V, Freccia destra
Ctrl+V, Esc

Come commento veloce, potresti notare che Enter è rappresentato da ^M . Abbiamo visto prima Ctrl+C apparso come ^C. Sembra che ^ Rappresenta Ctrl. Quindi Ctrl+M probabilmente significa lo stesso di Invio. Significa che possiamo inserire Invio digitando Ctrl+M? Provalo in una finestra di terminale. Vedrai che lo fa.

Quindi, chiaramente non vediamo l'ora Ctrl+C e Ctrl+V per copiare e incollare testo quando le funzioni tradizionali sono già assegnate. Quindi, Cosa possiamo usare?

IMPARENTATO: Come essere più produttivi in ​​Ubuntu usando le scorciatoie da tastiera

Ctrl + Spostare + C y Ctrl + Spostare + V

Sono facilmente ricordabili per il fatto che sono molto simili alle loro controparti, Ctrl+Shift+C e Ctrl+Shift+V sono sostituzioni dirette per Ctrl+C e Ctrl+V.

Se evidenzi il testo nella finestra del terminale con il mouse e premi Ctrl+Shift+C copierà quel testo in un buffer degli appunti.

Ctrl+Maiusc+C

Puoi usare Ctrl+Shift+V per incollare il testo copiato nella stessa finestra di terminale o in un'altra finestra di terminale.

Ctrl+Maiusc+V

Puoi anche incollare in un'applicazione grafica come gedit. Ma tieni presente che quando incolli in un'app, e no in una finestra di terminale; devi usare Ctrl+V.

Incolla da una finestra di terminale nell'editor gedit

E puoi anche andare dall'altra parte. Puoi evidenziare il testo in gedit e colpisci Ctrl+C e poi incollalo in una finestra di terminale usando Ctrl+Shift+V.

Copia dall'editor gedit e incolla in una finestra di terminale

La combinazione di tasti Ctrl+Insert equivale a Ctrl+Shift+C , e la combinazione Shift+Insert equivale a Ctrl+Shift+V. L'avvertenza qui è che questi possono essere utilizzati solo all'interno della stessa finestra del terminale.

Uso del mouse: clic destro

Puoi usare il mouse per copiare e incollare in una finestra di terminale. Devi usare il mouse per evidenziare il testo che stai per copiare, quindi perché non usarlo per eseguire le azioni di copia e incolla??

Dopo aver evidenziato del testo, fare clic con il tasto destro e selezionare “copia” nel menu contestuale.

finestra del terminale con menu di scelta rapida e copia evidenziata

Per incollare il testo copiato, fare clic con il tasto destro del mouse ancora una volta e selezionare “Catturare” nel menu contestuale.

finestra del terminale con menu di scelta rapida e incolla selezionato

Il testo viene incollato nella posizione del cursore sulla riga di comando. In questo esempio, il percorso relativo è stato fornito in modo errato e Bash non può cambiare directory. L'utente ha perso “~ /” dall'inizio del percorso. Hanno digitato "~ /" e in seguito hanno copiato il resto del percorso dal loro tentativo precedente e lo hanno incollato nella loro seconda riga di comando.

Quando premono Invio, sposta nella directory.

finestra di terminale con una directory modificata ottenuta mediante copia e incolla

Questo esempio mostra come incollare nella stessa finestra di terminale, ma puoi usare questa tecnica del tasto destro per incollare in diverse finestre di terminale. Puoi anche incollare in applicazioni grafiche usando questo metodo.

Uso del mouse: Pulsante centrale

C'è un modo ancora più veloce per copiare e incollare con il mouse, purché il tuo mouse abbia un pulsante centrale. Se premi la rotella di scorrimento (delicatamente!) E fa clic, ha un pulsante centrale.

Evidenzia un testo in una finestra del terminale e poi premi il pulsante centrale. Il testo evidenziato viene incollato nella posizione del cursore sulla riga di comando. Il copia e incolla avviene contemporaneamente.

Quindi, evidenziare del testo:

finestra di terminale con del testo evidenziato

Quindi premi il pulsante centrale:

finestra del terminale con testo evidenziato incollato sulla riga di comando

Puoi usare questo metodo per incollare tra diverse finestre di terminale e anche in applicazioni grafiche. Basta evidenziare il testo, passa all'altro terminale o alla finestra dell'app e premi il pulsante centrale.

Vecchia scuola – Nessun topo

Cosa succede quando non hai un mouse? Se non puoi evidenziare alcun testo, Come puoi copiarlo e incollarlo??

I server Linux sono spesso configurati senza a ambiente desktop grafico (DOVE), il che significa che non hai accesso a un mouse. Anche su un computer Linux che esegue un ambiente desktop grafico come GNOME e ha un mouse, ci saranno casi in cui non sarai in grado di usare il mouse per evidenziare il testo.

Come esempio, potresti essere passato a uno dei TTY aggiuntivi. Nelle distribuzioni moderne, questi sono in Ctrl+Alt+F3 (TTY3) fino a Ctrl+Alt+F6 (TTY6). (Ctrl+Alt+F2 ti riporterà alla tua sessione GDE e Ctrl+Alt+F1 ti porterà alla schermata di accesso GDE).

Forse stai persino utilizzando un dispositivo TTY hardware originale per connetterti a un computer Linux o Unix..

In entrambi i casi, queste tecniche funzioneranno per te. Il punto da ricordare qui è che questo non lo è copia e incolla, è tagliare ottenere, e incolla, e puoi solo tagliare e copiare dalla riga di comando corrente. In ogni caso, puoi usare i tasti freccia per scorrere la cronologia e trovare la riga di comando da cui vuoi tagliare, copia e incolla.

Le sequenze di tasti che puoi usare sono:

  • Ctrl + W: Taglia la parola prima del cursore e aggiungila al buffer degli appunti.
  • Ctrl + K: Taglia la parte della linea dopo il cursore e aggiungila al buffer degli appunti. Se il cursore si trova all'inizio della riga, taglierà e copierà l'intera linea.
  • Ctrl + tu: Taglia la parte della linea prima del cursore e aggiungila al buffer degli appunti. Se il cursore si trova alla fine della riga, taglierà e copierà l'intera linea.
  • Ctrl + E: Incolla l'ultimo testo che è stato tagliato e copiato.

Passiamo a TTY3. (Usa Ctrl + Alt + F1 per tornare al desktop in seguito).

Ctrl + Alt + F3
tty

Abbiamo un file che vogliamo eliminare, verifichiamo che sia qui.

ls -l file_to_delete.txt

Se usiamo il tasto freccia su, chiameremo l'ultimo comando che usiamo al di fuori della cronologia dei comandi. Potremmo semplicemente modificare questa riga, ma l'obiettivo è dimostrare come si taglia, copia e incolla, quindi eseguiremo il nostro compito di eliminare il file in un modo un po' lungo.

Sposteremo il cursore sulla prima lettera del nome del file e poi premeremo Ctrl+K. Questo rimuoverà quella parte della riga e copierà il testo nel buffer degli appunti.

Premiamo Backspace finché non eliminiamo la riga.

Digitiamo il rm per eliminare il file.

E ora possiamo colpire Ctrl+Y e incolla il resto della riga.

Questo completa il nostro comando e possiamo premere Invio per eliminare il file.

Questo tipo di taglio, copia e incolla non possono essere utilizzati tra TTY aggiuntivi. non riesco a tagliare, copia e incolla tra TTY3 e TTY4, come esempio.

È meglio pensare a TTY aggiuntivi come una linea TTY fisica affiancata. Non c'è modo di tagliare e incollare tra i diversi terminali fisici, e non c'è modo di farlo in queste emulazioni.

IMPARENTATO: Come funzionano i segnali Linux: SIGINT, SIGTERM e SIGKILL

Copia questo, controllo

Qualunque sia la situazione in cui ti trovi quando usi un computer Linux, ci sarà un modo per copiare e incollare. Hai delle opzioni. Alcuni di loro sono opzioni strane, ma almeno ci sono opzioni.

impostaTimeout(funzione(){
!funzione(F,B,e,v,n,T,S)
{Se(f.fbq)Restituzione;n=f.fbq=funzione(){n.callMethod?
n.callMethod.apply(n,argomenti):n.queue.push(argomenti)};
Se(!f._fbq)f._fbq = n;n.push=n;n.loaded=!0;n.version='2.0′;
n.coda=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(T,S) } (window, documento,'copione',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('dentro', '335401813750447');
fbq('traccia', 'Visualizzazione della pagina');
},3000);

Iscriviti alla nostra Newsletter

Non ti invieremo posta SPAM. Lo odiamo quanto te.