Windowsでコマンド実行する際に、コンソールを非表示にする方法

1. Visual Basic Script(.vbs)を使用する

Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c <コマンドを記載したバッチファイルのパス>", vbhide

2. 自動的にコンソールが閉じるバッチファイル

@echo off setlocal ::------------------------------------------------------------------------ :: 1) 再起動チェック ::------------------------------------------------------------------------ if "%~1" neq "--hidden" ( :: PowerShell でこのバッチを「隠しウィンドウ」で再起動 powershell -NoProfile -ExecutionPolicy Bypass ^ -WindowStyle Hidden ^ -Command "Start-Process -FilePath '%~f0' -ArgumentList '--hidden' -WindowStyle Hidden" exit /b ) ::------------------------------------------------------------------------ :: 2) 隠しモードでの本体処理 ::------------------------------------------------------------------------ :: ここから先に、実際の複雑なコマンド群を記載します。 :: 例:各種ツール呼び出し、ファイル操作、ループ処理 など echo 処理を開始します… <コマンド> echo 処理が完了しました。 endlocal exit /b