次のようにしてexeを起動できることを知っています:
start "" /b filename.exe
しかし、そのためには filename.exe の名前を知っている必要があります。.exe で終わる一般的なファイルに対してどのようにすればよいでしょうか? 私は明らかなワイルドカードの実装を試しました:
start "" /b *.exe
ただし、Windows では「*.exe」ファイルが見つからないというエラーが表示されます。
次のようにしてexeを起動できることを知っています:
start "" /b filename.exe
しかし、そのためには filename.exe の名前を知っている必要があります。.exe で終わる一般的なファイルに対してどのようにすればよいでしょうか? 私は明らかなワイルドカードの実装を試しました:
start "" /b *.exe
ただし、Windows では「*.exe」ファイルが見つからないというエラーが表示されます。
バッチファイル内で実行する場合は、次の方法で実行できます。
for %%i in (*.exe) do start "" /b "%%i"
実行する特定のファイルをスキップしたい場合:
for %%i in (*.exe) do if not "%%~nxi" == "blabla.exe" start "" /b "%%i"
サブフォルダーも確認する必要がある場合は、/r パラメーターを追加します。
for /r %%i in (*.exe) do start "" /b "%%i"
cmd から、これを実行して、exe
実行したいすべてのものがあるフォルダーに移動します。
for %x in (*.exe) do ( start "" /b "%x" )
それが役立つことを願っています
for /f "delims=" %%a in ('dir /b /s "*.exe"') do (
start %%a
)
最初にdirコマンドを使用してすべてのexeファイルを見つけてから実行する必要があります。
バットファイルに次の行を追加します
FOR /F "tokens=4" %%G IN ('dir /A-D /-C ^| find ".exe"') DO start "" /b %%G
これにより、現在のディレクトリ内のすべての .exe ファイルが実行されます。と同じ
*.exe
* がバッチでサポートされていれば、そうしていたでしょう。
コマンドラインウィンドウから直接実行したい場合は、
FOR /F "tokens=4" %G IN ('dir /A-D /-C ^| find ".exe"') DO start "" /b %G
スペースの問題を彼らのコードのせいにしないでください。二重引用符の使い方を知っておく必要があります。
for /f "delims=" %%a in ('dir /b /s *.exe') do (
start "" "%%a"
)