8.6.18 Parti di script per il piping
Gli script seguenti fanno cose utili come parti di una pipe.
find /usr | egrep -v "/usr/var|/usr/tmp|/usr/local"
# trova tutti i file /usr escludendone alcuni
xargs -n 1 command # lancia i comandi per tutti gli oggetti da stdin
xargs -n 1 echo | # divide oggetti separati da spazi in righe
xargs echo | # unisce tutte le linee in un'unica riga
grep -e pattern| # estrae le righe contenenti pattern
cut -d: -f3 -|
# estrae il terzo campo separato da : (file passwd, ecc.)
awk '{ print $3 }' | # estrae il terzo campo separato da spazi bianchi
awk -F'\t' '{ print $3 }' |
# estrae il terzo campo separato da tabulazione
col -bx | # rimuove il backspace ed espande le tabs in spazi
expand -| # espande le tabs
sort -u| # trova e rimuove i doppioni
tr '\n' ' '| # concatena le righe in una riga unica
tr '\r' ''| # rimuove il CR (carriage return, a capo)
tr 'A-Z' 'a-z'| # converte il maiuscolo in minuscolo
sed 's/^/# /'| # commenta ogni riga
sed 's/\.ext//g'| # rimuove .ext
sed -n -e 2p| # stampa la seconda riga
head -n 2 -| # stampa le prime due righe
tail -n 2 -| # stampa le ultime due righe