バッチファイルで、パスに括弧が含まれるファイルをstartしたい
解決したいこと
あるバッチファイルから、ほかのバッチファイルを起動させるバッチを作っているのですが、
test(1).bat
などの名前に()
が含まれるファイルをstart
できません。
解決方法を教えてください。
発生している問題・エラー
呼びだされた側のプロンプトに表示されているものです。
'test' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\username\Desktop>
該当するソースコード
start test(hoge).bat
pause
ファイル構造
.
├── hoge.bat
└── test(hoge).bat
自分で試したこと
ダブルクォーテーションでパスを囲みましたが、エラーは変わりませんでした。以下がそのソースコードです。
start "title" "test(hoge).bat"
また、遅延環境変数を用いても、エラーは変わりませんでした。以下がそのソースコードです。
@setlocal enabledelayedexpansion
set Path=test(hoge).bat
start "title" "!Path!"
遅延環境変数のダブルクォーテーションを付ける場所を変えても同じでした。
@setlocal enabledelayedexpansion
set Path="test(hoge).bat"
start "title" !Path!
なぜかファイル名に空白が含まれている場合はちゃんと動きました。
start "title" "test (hoge).bat"
pause
補足
以下のようにすれば動きますが、私はstart
コマンドの/high
や、/wait
、/min
などのオプションを使いたいので、できればstart
をつかいたいです。
"test(hoge).bat"