2016-08-24 6 views
0

私は、私はこの1つを使用していPostgreSQLデータベースおよびサーバーのためのバッチファイルを実行しようとしている:どこからでもPostgreSQLのバッチファイルを実行するには?

@ECHO ON 
@SET PATH="%~dp0";%PATH% 
@SET PGDATA=%~dp0\data 
@SET PGUSER=postgres 
@SET PGPORT=5432 
@SET PGLOCALEDIR=%~dp0\share\locale 
"%~dp0initdb" -U postgres -D %~dp0/data -E UTF8 
"%~dp0pg_ctl" -w -D "%~dp0/data" -l logfile start 
psql.exe -U postgres -f C:\pgsql\bin\db_create.sql postgres 
"%~dp0pg_ctl" -D "%~dp0/data" stop 

バッチファイルのディレクトリとpostgresのフォルダがでた場合、これはうまく動作します:

C:\Program Files (x86)\My App\My App\bin

バッチが動作し、私に電子を与えません。

が、バッチファイルのディレクトリとpostgresのフォルダは次のように、どこか別の場所にある場合

C:\pgsql\bin

rror:あなたのパスを引用していなかった

enter image description here

答えて

2

は:あなたが実際にエラーメッセージ、読みたい場合は

"%~dp0initdb" -U postgres -D "%~dp0/data" -E UTF8 
          ^----------^---missing 

あなたが持っているだろう「引数が多すぎますが、最初のファイル」です」これを見た。

+0

「C:\ pgsql \ bin」でうまく動いていて、それで私に別のエラーが表示されたので通知しませんでした。 ディレクトリC:/ Program Files(x86)/ My App/My App/bin/data ... initdb:ディレクトリ "C:/ Program Files(x86)/ My App/My App/bin/data"を作成できませんでした:許可が拒否されました どうすれば解決できますか – HamzaGeeK

+0

@HamzaGeeK Do *** ***データディレクトリを 'Program Files'に入れます。そのディレクトリは理由で保護されています。 –

+0

@a_horse_with_no_nameありがとう、男私は今それを得た – HamzaGeeK

関連する問題