Редактировать : на самом деле, это не работает, извините.Но ниже работает.
Если результат всегда 4 строки и без вызова каких-либо других команд, которые создают процесс:
(read; read; read count; read ) < <(psql db -c "SELECT COUNT(test) FROM tbTest;")
echo "$count"
Это также работает:
Конец редактирования
psql db -c "SELECT COUNT(test) FROM tbTest;" | (read; read; read count; read; echo "$count")
Предупреждение: переменная count
не будет доступна из скобок, поскольку канал (|
) запускает новый процесс.Так что это не работает:
psql db -c "SELECT COUNT(test) FROM tbTest;" | (read; read; read count; read)
echo "$count"
Редактировать:
Если вы хотите считать в переменной, вы можете:
count=$(psql db -c "SELECT COUNT(test) FROM tbTest;" | (read; read; read count_tmp; read; echo "$count_tmp"))