もともとこれはdb管理の問題だと思っていましたが、線が少しぼやけてきたと思います。ここでは、これを厳密にスクリプトの問題として扱います。さらに背景情報が必要な場合は、ServerFault に投稿しました。
私のスクリプト
物事を単純にするために、元のスクリプトをこれに要約しました。これは、pg_dump_scriptという名前の .sh にあるものです。
/home/myusername/lappstack-1.2-5/postgresql/bin/pg_dump --host=127.0.0.1 --port=5433 --username=myusername mydbname
これを実行すると、次のエラーが表示されます。
$ bash pg_dump_script.sh
Password:
" does not exist database "corenection to database "mydbname
スクリプト ファイルの行をコピーして貼り付け、コマンド ラインから実行すると、すべて正常に動作します。
スクリプト ファイルのアクセス許可は次のとおりです。
-rwxr-xr-x
I used chmod 755
ここで何が間違っているのかわかりませんか?私はスクリプトの専門家ではありませんが、コンソールから実行できれば、もちろんスクリプトからでも問題なく実行できると思いました。情報が必要な場合はお知らせください。私はこれをシンプルにしようとしています。
アップデート
すべてのパラメータを削除しました。これは、.sh 内のすべてのテキストです。
/home/myusername/lappstack-1.2-5/postgresql/bin/pg_dump
次のエラーが表示されます。
$ ./pg_dump_script.sh
: No such file or directoryine 1: /home/myusername/lappstack-1.2-5/postgresql/bin/pg_dump
: command not foundst.sh: line 2: