Quello che di solito faccio è usare le virgolette doppie (" ) per postgres -c 's argomento e virgolette doppie (\" ) per psql -c l'argomento. In questo modo, posso usare virgolette singole (' ) all'interno della stringa SQL senza problemi:
[example@sqldat.com ~]# su postgres -c "psql -c \"SELECT 'hi' \" "
?column?
----------
hi
(1 row)