【.cmd】 バッチファイルスクリプト %15 【.bat】

2025/12/11(木) 18:08:00.33ID:ZLjLIbW/
複数のフォルダをどう指定したいのか?
・ルートフォルダを指定して、自動的にそのサブフォルダを全て実行する
・エクスプローラで、フォルダを複数選択して実行
など
2025/12/11(木) 18:16:33.64ID:FGoG9TJ/
ルートフォルダを指定して、自動的にそのサブフォルダを全て実行する
です。
2025/12/11(木) 21:14:47.68ID:ZLjLIbW/
ご飯食べてきてもまだ誰も回答してないのか
一例だけど
・cdでフォルダ移動しなくてもmgickにパス指定で渡せばいけると思うが実行して確認してないので安全策
・output.pngが存在してたらそれも対象になっちゃいそうだからスキップしとく。何度でも再実行可能になるし
・.pngが存在しないサブフォルダはスキップ

@echo off
set target=
setlocal
if "%~1" neq "" set target="%~1"
for /r %target% %%i in (*.png) do (
cd /d %%~dpi
if not exist "output.png" (
echo %%~dpi
magick.exe montage *.png -tile 3x3 -geometry 400x400+10+4 output.png
)
)
endlocal
2025/12/11(木) 21:37:35.25ID:ZLjLIbW/
上のはフォルダにpngファイルがいっぱいあるとその分ループするので(実行には問題ないとおもうが)
@echo off
set target=
setlocal
if "%~1" neq "" set target="%~1"
for /r %target% %%i in (.) do (
cd /d %%i
if not exist "output.png" (
if exist "*.png" (
echo %%i
magick.exe montage *.png -tile 3x3 -geometry 400x400+10+4 output.png
)
)
)
endlocal
2025/12/11(木) 21:47:13.12ID:FGoG9TJ/
ありがとうございます。
ついでに元ファイルを削除する場合はどう書けばいいのでしょうか?
for %%f in (*.png) do (if /I not "%%f"=="output.png" del "%%f")
これだと削除されなかったのですが
2025/12/11(木) 21:54:32.51ID:FGoG9TJ/
失礼しました。
なんとかなりました。
2025/12/12(金) 08:36:30.41ID:kUSQ7o+M
PCのCopilotを呼び出すbatの書き方を教えてください。
2025/12/12(金) 11:46:37.54ID:kUSQ7o+M
自己解決しました。
2025/12/12(金) 12:39:23.24ID:kUSQ7o+M
呼び出す方法は以下になりますが、これだと起動に時間がかかります。
もう少し素早く起動させる方法はないでしょうか?

@echo off
tasklist | find "pwahelper.exe" > NUL
if %ERRORLEVEL% == 0 (
taskkill /im pwahelper.exe /f
) else (
start shell:Appsfolder\Microsoft.Copilot_8wekyb3d8bbwe!App
)
2025/12/12(金) 12:52:42.13ID:kUSQ7o+M
修正できました。
2025/12/12(金) 13:29:31.62ID:kUSQ7o+M
すいません。
修正できたと思ったのですが、無理でした。
batで素早くCopilotを起動する方法を教えてください。
ちなみにショートカットキー(Windowsキー+Cキー)だとすぐに起動します。
レスを投稿する