Ustaw zmienną środowiskową PGPASSWORD wewnątrz skryptu przed wywołaniem psql
PGPASSWORD=pass1234 psql -U MyUsername myDatabaseName
Aby uzyskać więcej informacji, zobacz http://www.postgresql.org/docs/current/static/libpq-envars.html
Edytuj
Od wersji Postgres 9.2 istnieje również możliwość określenia ciągu połączenia lub identyfikatora URI, który może zawierać nazwę użytkownika i hasło. Składnia to:
$ psql postgresql://[user[:password]@][host][:port][,...][/dbname][?param1=value1&...]
Używanie tego stanowi zagrożenie bezpieczeństwa, ponieważ hasło jest widoczne w postaci zwykłego tekstu, gdy patrzy się na wiersz poleceń uruchomionego procesu, np. za pomocą ps
(Linux), ProcessExplorer (Windows) lub podobne narzędzia przez innych użytkowników.
Zobacz także to pytanie dotyczące administratorów baz danych