GNU/Linux >> Znalost Linux >  >> Linux

Výstup do Stdout a zároveň Grep do souboru?

Mám skript, který vydává text do stdout . Chci vidět všechen tento výstup ve svém terminálu a zároveň chci filtrovat některé řádky a uložit je do souboru. Příklad:

$ myscript
Line A
Line B
Line C

$ myscript | grep -P 'A|C' > out.file

$ cat out.file
Line A
Line C

Chci vidět výstup prvního příkazu v terminálu a uložit výstup druhého příkazu do souboru. Ve stejnou dobu. Zkusil jsem použít tee , ale bez výsledku, nebo lépe s obráceným výsledkem.

Přijatá odpověď:

Chci vidět výstup prvního příkazu v terminálu a uložit výstup druhého příkazu do souboru.

Pokud je vám jedno, zda to, na co se díváte, pochází z stdout nebo stderr , stále můžete používat tee :

myscript | tee /dev/stderr | grep -P 'A|C' > out.file

Bude fungovat na linuxu; Nevím, jestli „/dev/stderr“ je stejně použitelné na jiných *nixech.


Linux
  1. Jak přesměrovat výstup do souboru a Stdout v Linuxu

  2. Jak zkopírovat soubor a vytvořit cílové adresáře současně?

  3. Způsob, jak přesměrovat výstup programu, a přesto jej přejít na Stdout?

  1. Přesměrování a výstup potrubí?

  2. Má být výstup uložen do souboru se stejným názvem jako vstupní soubor?

  3. Jak přesměrovat výstup do souboru a stdout

  1. Jaký je rozdíl v přesměrování výstupu pomocí >, &>, >&a 2&>?

  2. Jak přesměrovat stderr a stdout na různé soubory ve stejném řádku ve skriptu?

  3. Jak zachytit výstup top příkazu do souboru v linuxu?