ファイル権限を 0600 に設定して、.pgpass ファイルに必要なエントリを作成しました。
パスワードを入力せずに、db form shell コマンド ラインに接続できます。
しかし、postgres を内部的にクエリするシェル スクリプトを実行すると、パスワードの入力を求められます。
何が間違っているのかわかりません。
サンプル シェル スクリプトを次に示します。
#!/bin/bash
source $1
psql -h $DBHOST -d $DBNAME -U $DBUSER << EOF
select * from students limit 10;
EOF
DBHOST、DBNAME、および DBUSER のすべての値が正常に機能しています。