Come salvare l'output della riga di comando su file su Windows, Mac e Linux

Come salvare l'output della riga di comando su file su Windows, Mac e Linux

Quando esegui un comando in una finestra di Terminale, l'output del comando viene normalmente stampato sul Terminale o sullo schermo, quindi puoi leggerlo immediatamente. Puoi anche stampare l'output di un comando su un file, se vuoi salvarlo.





Salvare l'output di un comando in un file è utile se stai cercando di diagnosticare un problema. Per ottenere assistenza dal supporto tecnico, potrebbe essere necessario eseguire determinati comandi sul computer e inviare i risultati al team di supporto. Questo è facile usando il reindirizzamento dell'output sulla riga di comando.





Oggi tratteremo come inviare l'output di un comando a un file di testo nella shell bash su Windows, Mac e Linux.





Nota: Useremo il Mac Terminal nel nostro esempio, ma funziona allo stesso modo nella shell bash su Linux e nel nuova shell bash in Windows 10 .

Reindirizza l'output solo su un file

Ci sono due operatori per reindirizzare l'output di un comando su un file invece che sullo schermo.



Il > Il simbolo crea un nuovo file se non è presente o sovrascrive il file se esiste già. Il >> crea anche un nuovo file se non è presente, ma aggiunge il testo alla fine del file se esiste già, invece di sovrascrivere il file.

Per reindirizzare l'output di un comando su un file, digitare il comando, specificare il > o il >> e quindi fornire il percorso di un file a cui si desidera reindirizzare l'output. Ad esempio, il comando ls elenca i file e le cartelle nella directory corrente. Quando esegui il comando seguente, l'elenco di file e cartelle verrà scritto nella cartella ls_output.txt file nel Uscita terminale cartella.





Sostituire /percorso/di/file con il percorso completo del file che si desidera utilizzare.

ls > /path/to/file

Questo è il comando per il nostro esempio.





quale servizio di consegna paga di più
ls > /Users/lorikaufman/TerminalOutput/ls_output.txt

Per visualizzare il contenuto del file nella finestra Terminale, utilizzare il pulsante gatto comando come mostrato nel comando seguente. Di nuovo, sostituisci /percorso/di/file con il percorso completo del file che si desidera visualizzare.

cat /path/to/file

Il > L'operatore sostituisce il contenuto di un file esistente ogni volta che lo si utilizza per reindirizzare l'output. Se vuoi salvare l'output di più comandi in un singolo file, usa il pulsante >> operatore invece. Questo aggiunge l'output di un comando alla fine del file specificato, se esiste già. Se il file non esiste, ne crea uno nuovo.

Ad esempio, aggiungeremo le informazioni di sistema alla fine del file che abbiamo creato sopra. Quindi, nella riga seguente, uname -a è il comando, seguito da >> operatore di reindirizzamento. Quindi, il percorso completo del file a cui vogliamo aggiungere l'output del il tuo nome comando.

Il -a parametro in il tuo nome comando stampa tutte le informazioni di sistema disponibili.

uname -a >> /Users/lorikaufman/TerminalOutput/ls_output.txt

Per visualizzare il file con le informazioni aggiunte nella finestra Terminale, inserisci il seguente comando, con il percorso completo del tuo file.

come trovare i tuoi iscritti su youtube
cat /Users/lorikaufman/TerminalOutput/ls_output.txt

Ripetere questo processo tutte le volte necessarie per continuare ad aggiungere l'output del comando alla fine del file.

Ecco un altro esempio di invio dell'output di ls comando come albero di directory, con le sottodirectory elencate in modo ricorsivo (il R parametro) e un file per riga (il 1 parametro).

ls -1R > /Users/lorikaufman/TerminalOutput/dir_tree.txt

Quindi, usiamo il gatto comando, come accennato in precedenza per visualizzare il contenuto del file nella finestra Terminale.

cat /Users/lorikaufman/TerminalOutput/dir_tree.txt

Il > e >> gli operatori non visualizzano l'output di un comando sullo schermo. L'output viene inviato solo a un file.

Se vuoi inviare l'output a un file e vederlo sullo schermo, usa il tee comando invece di > e >> operatori.

Per usare il tee comando devi reindirizzare l'output dal comando che stai eseguendo, come ls , al tee comandare, tramite l'operatore tubo, una barra verticale ( | ). Ad esempio, il comando seguente prende l'output di ls comando e lo convoglia nel tee comando. Il tee Il comando invia quindi quell'output allo schermo e a un file specificato utilizzando il percorso completo del file.

puoi vedere chi è iscritto a te su youtube?
ls | tee /Users/lorikaufman/TerminalOutput/ls_output.txt

Il comando precedente sostituisce tutto il contenuto nel file o ne crea uno nuovo se non esiste, proprio come il > operatore. Abbiamo usato quanto segue gatto comando per visualizzare il contenuto del nostro file nella finestra Terminale.

cat /Users/lorikaufman/TerminalOutput/ls_output.txt

Per usare il tee comando per stampare l'output sullo schermo e aggiungerlo alla fine di un file, immettere il seguente comando. Qui, stiamo aggiungendo le informazioni di sistema complete alla fine del file usando il uname -a comando, proprio come abbiamo fatto con il >> operatore, ma inviando anche l'output allo schermo.

uname -a | tee -a /Users/lorikaufman/TerminalOutput/ls_output.txt

Il seguente comando è il tee versione di stampa ricorsiva di un albero di directory su un file e sullo schermo, un file su ogni riga, proprio come abbiamo fatto con il > operatore.

ls -1R | tee /Users/lorikaufman/TerminalOutput/dir_tree.txt

Quindi, usiamo il gatto nuovamente il comando per visualizzare il contenuto del file.

cat /Users/lorikaufman/TerminalOutput/dir_tree.txt

Ma aspetta, c'è di più

Esistono molti altri modi per reindirizzare l'output, inclusi gli errori, su un file. Puoi leggere i diversi operatori e comandi usati per reindirizzare l'output in Capitolo Reindirizzamento I/O della Advanced Bash Scripting Guide .

Anche gli utenti Mac dovrebbero aggiungere un segnalibro il nostro cheat sheet dei comandi del terminale Mac .

Condividere Condividere Tweet E-mail Elimina questi file e cartelle di Windows per liberare spazio su disco

Hai bisogno di liberare spazio su disco sul tuo computer Windows? Ecco i file e le cartelle di Windows che possono essere eliminati in sicurezza per liberare spazio su disco.

Leggi Avanti
Argomenti correlati
  • Linux
  • Mac
  • finestre
  • terminale
  • Linux Bash Shell
Circa l'autore Lori Kaufman(62 articoli pubblicati)

Lori Kaufman è una scrittrice tecnica freelance che vive nell'area di Sacramento, in California. È una fanatica dei gadget e della tecnologia che ama scrivere articoli pratici su una vasta gamma di argomenti. Lori ama anche leggere i misteri, il punto croce, il teatro musicale e Doctor Who. Connettiti con Lori su LinkedIn .

Altro da Lori Kaufman

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti
Categoria Mac