Normalmente, otteniamo l'output di qualsiasi comando nel terminale. A volte, dobbiamo inviare l'output del comando come input di un altro comando. Questa attività può essere eseguita eseguendo i comandi più volte. Ma questa attività può essere eseguita facilmente utilizzando un comando pipa che esegue due o più comandi alla volta in Linux in cui l'output di un comando è l'input del comando successivo. Il '|' L'operatore viene utilizzato per le tubazioni. Gli usi del comando pipa sono descritti in questo tutorial.
Esempi di comandi a tubo
I diversi usi del comando pipe (|) sono mostrati in questa parte del tutorial.
Esempio 1: scrivere su un file
Il valore stringa particolare può essere scritto in un nuovo file utilizzando i comandi "eco" e "cat".
Esegui il comando seguente per scrivere un valore di stringa nel test.file txt. Qui, l'output del comando "Echo" viene superato come input del comando "Cat":
$ echo "impara la programmazione bash" | CAT> Test.TXT
Eseguire il comando seguente per verificare il contenuto del test.TXT file:
$ cat test.TXT
Il seguente output mostra che il file viene creato correttamente con l'output del comando "Echo":
Esempio 2: conta il numero totale di file particolari
Il metodo per contare il numero totale di file di testo che iniziano con la parola "test" è mostrato in questo esempio. Questa attività può essere eseguita utilizzando più comandi o un singolo comando con il tubo (|).
Esegui il seguente comando per stampare l'elenco dei file di testo della posizione corrente:
$ ls *.TXT
Il seguente output mostra che ci sono due file di testo che iniziano con la parola "test". Questi sono test.txt e testfile.TXT:
Esegui il seguente comando per archiviare l'elenco dei file di testo nella variabile $ elenco:
$ list = 'ls *.TXT'
Esegui il seguente comando per scoprire l'elenco dei file di testo che iniziano con la parola "test" e memorizzali nel filtro.file txt:
$ grep test*.TXT $ List> Filtro.TXT
Esegui il comando seguente per contare il numero totale di righe del filtro.file txt:
$ wc -l filtro.TXT
Viene visualizzato il seguente output dopo aver eseguito i comandi precedenti:
L'attività dei comandi precedenti può essere eseguita facilmente utilizzando il seguente comando singolo in cui l'output del comando "LS" viene inviato come input del comando "grep". L'output del comando "grep" è come input del comando "WC" usando il tubo (|).
$ ls *.txt | test grep | wc -l
Viene visualizzato il seguente output dopo l'esecuzione del comando precedente:
Esempio 3: ordinare il contenuto di un file
Il comando "ordina" può essere utilizzato per ordinare il contenuto del file in modi diversi. Il metodo di ordinamento del contenuto di un file di testo usando i comandi "Cat" e "Ordina" è mostrato in questa parte del tutorial.
Crea un file di testo denominato prodotti.TXT Con il seguente contenuto:
Esegui il comando seguente per controllare il contenuto dei prodotti.file txt:
Prodotti da $ Cat.TXT
Viene visualizzato il seguente output dopo l'esecuzione del comando precedente:
Esegui il comando seguente per ordinare il contenuto del file in ordine crescente in base alla prima colonna del file:
Prodotti da $ Cat.txt | ordinare
Viene visualizzato il seguente output dopo l'esecuzione del comando precedente:
Esegui il comando seguente per ordinare il contenuto del file in ordine decrescente in base alla prima colonna del file:
Prodotti da $ Cat.txt | sort -r
Viene visualizzato il seguente output dopo l'esecuzione del comando precedente:
Esegui il comando seguente per ordinare il contenuto del file in ordine crescente in base alla terza colonna del file:
Prodotti da $ Cat.txt | Ordina -k3
Viene visualizzato il seguente output dopo l'esecuzione del comando precedente:
Esegui il comando seguente per ordinare il contenuto del file in ordine crescente in base alla prima colonna del file e memorizzare l'output ordinato nel prodotto ordinato.file txt:
Prodotti da $ Cat.txt | ordinamento | Cat> SortedProduct.TXT
Esegui il comando seguente per verificare il contenuto del Product Ordined.file txt:
$ Cat OrdiedProduct.TXT
Viene visualizzato il seguente output dopo aver eseguito i comandi precedenti:
Esempio 4: leggi il contenuto particolare di un file
Il comando "head" viene utilizzato per leggere un numero particolare di righe dall'inizio del file. Il comando "Tail" viene utilizzato per leggere un numero particolare di righe dalla fine del file. I metodi di utilizzo dei comandi "Cat" e "Head", comandi "Cat" e "Tail" e comandi "Cat", "Head" e "Tail" con l'operatore pipa (|) sono mostrati in questo esempio.
Esegui i seguenti comandi per controllare il contenuto dei prodotti.file txt e stampare le prime due righe dei prodotti.file txt:
Prodotti da $ Cat.TXT
Prodotti da $ Cat.txt | Testa -2
Viene visualizzato il seguente output dopo aver eseguito i comandi precedenti:
Esegui i seguenti comandi per controllare il contenuto dei prodotti.file txt e stampare le ultime tre righe dei prodotti.file txt:
Prodotti da $ Cat.TXT
Prodotti da $ Cat.txt | coda -3
Viene visualizzato il seguente output dopo aver eseguito i comandi precedenti:
Esegui i seguenti comandi per controllare il contenuto dei prodotti.txt file e stampa l'ultima riga dalle prime tre righe dei prodotti.file txt:
Prodotti da $ Cat.TXT
Prodotti da $ Cat.txt | testa -3 | Tail -1
Viene visualizzato il seguente output dopo aver eseguito i comandi precedenti:
Conclusione
L'operatore di tubo (|) è un operatore molto utile di Bash che viene utilizzato per più scopi. Alcuni usi comuni di questo operatore sono mostrati in questo tutorial usando vari esempi. Speriamo che l'uso dell'operatore di tubo (|) sia cancellato per gli utenti Bash dopo aver letto questo tutorial.