Utilizzo di pipe nella riga di comando, una panoramica di base

Una delle funzioni essenziali della riga di comando di Mac OS X, Linux o qualsiasi Unix, è la comprensione di alcune nozioni di base su come utilizzare le pipe. In sostanza, i pipe consentono di indirizzare l'output di un comando nell'input di un altro comando, consentendo al seguente comando di manipolare, regolare o lavorare con il comando dei comandi precedenti. Sapere come e quando usare le pipe è vitale per l'effettivo utilizzo della riga di comando ed è una conoscenza fondamentale per gli utenti di Terminal.

Senza ulteriori spiegazioni, ecco alcune informazioni sui tubi della riga di comando, su cosa fanno e, soprattutto, come utilizzare i tubi per controllare l'output della riga di comando, "collegandolo" in modo efficace altrove:


Il simbolo pipe sembra |, (è la stessa chiave del tuo \ key, se sei confuso), ed è immensamente utile quando stai lavorando nella riga di comando. Ecco alcuni esempi:

ls -la | more

Questo prende l'output del comando list (con long e all flags) e lo "pipe" attraverso il comando more, permettendoti di visualizzare l'output una pagina alla volta.

ps aux | grep user

Questo comando prende l'output del comando di processo e riporta solo le istanze di processo appartenenti a 'utente'

Puoi usare pipe praticamente con qualsiasi cosa, quindi usa la tua immaginazione.

Un altro uso comune per i tubi è quello di combinare "meno" per migliorare la leggibilità di output lunghi, quando si utilizza "cat" o qualcosa di simile:

cat /etc/passwd | less

I pipe possono essere utilizzati anche in modi molto avanzati, prendendo l'output di qualsiasi comando e reindirizzando quell'output di comando nell'input di un'altra stringa di comando, e quindi prendendo quell'output e reindirizzandolo ancora una volta, in una lunga serie di comandi e pipe, questo potrebbe assomigliare a questo:

cat /etc/OSXDaily.txt | grep "osxdaily test" '\n' | sort | uniq | less

I pipe possono anche essere combinati con reindirizzamenti e praticamente qualsiasi altro metodo di manipolazione di qualsiasi cosa nel terminale.

Riguardiamo la riga di comando di Mac OS X relativamente spesso qui su OS X Daily, ma il nostro recente articolo sulla base della usabilità della riga di comando: Il reindirizzamento probabilmente avrebbe dovuto includere anche un po 'di pipe, quindi eccoci qui. Gli scopi più avanzati sarebbero meglio coperti in un altro tutorial approfondito per esplorare oltre le basi, quindi rimanete sintonizzati.