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.
Kruhové odkazy na názvy ve funkci Bash Shell, ale ne v Ksh?
Omezit najít výstup a vyhnout se signálu 13?