4

次のようにしてexeを起動できることを知っています:

start "" /b filename.exe

しかし、そのためには filename.exe の名前を知っている必要があります。.exe で終わる一般的なファイルに対してどのようにすればよいでしょうか? 私は明らかなワイルドカードの実装を試しました:

start "" /b *.exe

ただし、Windows では「*.exe」ファイルが見つからないというエラーが表示されます。

4

5 に答える 5

13

バッチファイル内で実行する場合は、次の方法で実行できます。

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"
于 2013-03-31T00:23:10.050 に答える
4

cmd から、これを実行して、exe実行したいすべてのものがあるフォルダーに移動します。

for %x in (*.exe) do ( start "" /b  "%x" )
于 2013-03-31T00:20:03.603 に答える
2

それが役立つことを願っています

for /f "delims=" %%a in ('dir /b /s "*.exe"') do (
    start %%a
)

最初にdirコマンドを使用してすべてのexeファイルを見つけてから実行する必要があります。

于 2013-03-31T00:19:53.463 に答える
0

バットファイルに次の行を追加します

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
于 2013-03-31T00:32:25.087 に答える
0

スペースの問題を彼らのコードのせいにしないでください。二重引用符の使い方を知っておく必要があります。

for /f "delims=" %%a in ('dir /b /s *.exe') do (
    start "" "%%a"
)
于 2013-03-31T14:13:44.117 に答える