0Pricing
Linux Command Line & Bash Scripting Mastery · Lezione

Pipeline di comandi (|)

Comprenda la potenza delle pipe per collegare i comandi, inviando l'output di un comando come input a un altro per eseguire operazioni complesse.

Pipeline di comandi (|) è una lezione Linux Command Line & Bash Scripting Mastery gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Command Line & Bash Scripting Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.

Collegare i comandi con le pipe

Benvenuto. In Linux, spesso è necessario combinare la potenza di diversi comandi per ottenere un risultato specifico. È qui che le pipe si rivelano utili.

Una pipe consente di inviare l'output di un comando direttamente come input a un altro comando. È come un nastro trasportatore per i dati.

Il simbolo della pipe '|'

Il simbolo della pipe è una barra verticale: |. Va inserito tra due comandi.

  • Il comando a sinistra invia il suo standard output (ciò che normalmente stampa sullo schermo).
  • Il comando a destra riceve questo output come standard input.

È un concetto fondamentale per lavorare in modo efficiente dalla riga di comando.

La prima pipe: `ls | less`

Vediamo una pipe in azione. Il comando ls -l /usr/bin elenca molti file, spesso troppi per una sola schermata.

Inviando il suo output a less tramite una pipe, può visualizzarlo una pagina alla volta. Provi a eseguire questo esempio:

ls -l /usr/bin | less

Filtrare l'output con `grep`

Le pipe sono ottime per filtrare i dati. Il comando grep cerca schemi nel testo. Se combinato con una pipe, può filtrare l'output di un altro comando.

Questo comando elenca tutti i file nella directory corrente e poi filtra l'elenco per mostrare solo quelli che terminano con .txt:

ls | grep .txt

Contare gli elementi con `wc`

Il comando wc (word count) può contare righe, parole o caratteri. Se usato con una pipe, conta i dati ricevuti tramite l'input della pipe.

Per contare quanti file .txt sono presenti nella directory corrente, può concatenare ls, grep e wc -l (conteggio delle righe):

ls | grep .txt | wc -l

Concatenare più comandi

Non è limitato a soli due comandi. Può concatenarne molti usando più pipe e creando sequenze potenti.

Ogni pipe passa l'output del comando precedente a quello successivo nella catena:

ps aux | grep chrome | wc -l

Ordinare l'output di una pipe (`sort`)

Il comando sort dispone le righe di testo in ordine alfabetico o numerico. Viene spesso usato dopo una pipe per organizzare i dati.

Questo esempio elenca i file in /etc e li ordina in ordine alfabetico inverso, mostrando solo i primi 5 risultati:

ls /etc | sort -r | head -n 5

Trovare le righe univoche (`uniq`)

Il comando uniq rimuove le righe adiacenti duplicate. È più efficace se usato dopo sort, che raggruppa le righe identiche.

Ordiniamo un elenco di frutti e poi troviamo quelli univoci:

echo -e "apple\nbanana\napple\norange" | sort | uniq

Pipe e reindirizzamento I/O a confronto

Ricorda il reindirizzamento I/O (>, >>, <) della lezione precedente?

  • Pipe (|): collegano l'output di un comando all'input di un altro comando. In questo modo i dati fluiscono tra i programmi.
  • Reindirizzamento (>, <): collega l'input o l'output di un comando a un file. Consente di salvare i dati su disco o di leggerli dal disco.

Entrambi sono potenti, ma hanno scopi diversi.

Verifica sulle pipe

Ha imparato a collegare i comandi usando le pipe. Verifichiamo la sua comprensione.

Riepilogo: la potenza delle pipe

Ottimo lavoro. Ha imparato le basi dell'uso delle pipe in Linux.

  • Le pipe (|) collegano l'output di un comando all'input di un altro.
  • Consentono di concatenare i comandi per svolgere potenti attività di filtraggio, ordinamento ed elaborazione.
  • Le pipe sono diverse dal reindirizzamento I/O, che collega i comandi ai file.

Continui a esercitarsi con comandi diversi e scopra tutto ciò che può ottenere combinandoli.

Domande Frequenti

La lezione «Pipeline di comandi (|)» è gratuita?

Sì — il testo completo di «Pipeline di comandi (|)» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Command Line & Bash Scripting Mastery, passa a CoddyKit PRO. Il corso Linux Command Line & Bash Scripting Mastery include 4 lezioni in totale.

Cosa imparerò in «Pipeline di comandi (|)»?

Comprenda la potenza delle pipe per collegare i comandi, inviando l'output di un comando come input a un altro per eseguire operazioni complesse. Eserciti Linux Command Line & Bash Scripting Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Linux Command Line & Bash Scripting Mastery?

Non è richiesta alcuna esperienza precedente. Linux Command Line & Bash Scripting Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Pipeline di comandi (|)»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Linux Command Line & Bash Scripting Mastery?

Sì. Ogni lezione Linux Command Line & Bash Scripting Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Gestione dei processi (ps, top, kill)
  2. Redirezione dell'input/output (>, >>, <)
  3. Pipeline di comandi (|)
  4. Job in background e controllo dei job
← Torna a Linux Command Line & Bash Scripting Mastery