GNU/Linux >> Linux Esercitazione >  >> Linux

Utilizzo dell'output dei comandi precedenti in bash

Poiché la quantità di output è indeterminata, non ha senso per bash per memorizzarlo per te per la ri-visualizzazione. Ma c'è una soluzione alternativa al tuo problema:

Il tee Il comando consente di duplicare un flusso di output in un file. Quindi, se sei disposto a utilizzare un file per l'archiviazione temporanea, puoi fare qualcosa del genere:

make | tee output.txt
grep "warning" output.txt

Questa soluzione evita di eseguire make due volte, il che potrebbe essere (a) costoso e (b) incoerente:la seconda marca potrebbe svolgere meno lavoro della prima perché alcuni obiettivi sono già stati raggiunti la prima volta.

Nota:non ho provato questo. Potrebbe essere necessario giocherellare con l'unione dei flussi di errore e di output, o simili.


Potresti fare così:

make
!! | grep "warning"

Usando !! gli dici di ripetere l'ultimo comando in quel punto, insieme a qualsiasi altro comando bash che desideri aggiungere.

Lo svantaggio è che se il comando che stai ripetendo richiede molto tempo per essere eseguito, dovrai aspettare molto più tempo a meno che tu non abbia prima memorizzato l'output del comando precedente in un file di output.


Linux
  1. Utilizzo di Bash per l'automazione

  2. 5 comandi Linux che inizierò a usare

  3. Utilizzo delle istruzioni Case in Bash

  4. Dividi l'output del comando per colonne usando Bash?

  5. Array in Bash non trovato

Cos'è Git Bash; Lavorare con i comandi Git Bash

Come creare un server CS:GO su VPS Linux

Bash:Scrivi su file

Bash Select (Crea menu)

comandi bash che non si adattano a una pagina:rendono l'output scorrevole

Ripristino di ~/.bashrc senza utilizzare i comandi bash