無駄にはまってしまったので自分へのメモ
[Program Files]とかの事例
解決法は最下部の事例
コマンドでスペースを含むPathの指定をしたい
試した事
- だめもとで普通にパスを指定してみる
- Pathをダブルコーテで囲ってみる
- コマンドすべてをダブルコーテで囲ってみる
- フォルダ名毎にダブルコーテで囲ってみる
だめもとで普通にパスを指定してみる
C:\>cmd.exe /k C:\xampp\mysql space\bin\mysqldump ~~~~
'C:\xampp\mysql' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
ディレクトリPathをスペースで分割されて
意図したディレクトリを参照してくれない。
Pathをダブルコーテで囲ってみる
cmd.exe /k "C:\xampp\mysql space\bin\mysqldump"
C:\>cmd.exe /k "C:\xampp\mysql space\bin\mysqldump" ~~~~
'C:\xampp\mysql' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
ググッそう書いてあるのになぜ・・?
※上記のパターンで動く人もいます。駄目元試してみてください。
コマンドすべてをダブルコーテで囲ってみる
C:\>"cmd.exe /k C:\xampp\mysql space\bin\mysqldump"
ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。
ですよね・・
フォルダ名毎にダブルコーテで囲ってみる
C:\>cmd.exe /k C:\"xampp"\"mysql space"\"bin"\"mysqldump"
これでうまくいきました!