Modifica: in realtà, questo non funziona, mi spiace. Ma muggisce funziona.
Se il risultato è sempre 4 linee, e senza invocare altri comandi che creano un processo:
(read; read; read count; read) < <(psql db -c "SELECT COUNT(test) FROM tbTest;")
echo "$count"
questo lavoro anche:
Fine modifica
psql db -c "SELECT COUNT(test) FROM tbTest;" | (read; read; read count; read; echo "$count")
Attenzione: la variabile count
non sarà disponibile tra parentesi perché la pipe (|
) avvia un nuovo processo. Quindi questo non funziona:
psql db -c "SELECT COUNT(test) FROM tbTest;" | (read; read; read count; read)
echo "$count"
Edit:
Se si vuole contare in una variabile, è possibile:
count=$(psql db -c "SELECT COUNT(test) FROM tbTest;" | (read; read; read count_tmp; read; echo "$count_tmp"))
eccellente risposta: D – Killercode
AH fornisce una molto più soluzione elegante. –