I have this bat file and I want to minimize the cmd window when I run it:
@echo off
cd /d C:\\leads\\ssh
call C:\\Ruby192\\bin\\setrbvars.bat
ruby C:\\leads
There is a quite interesting way to execute script minimized by making him restart itself minimised. Here is the code to put in the beginning of your script:
if not DEFINED IS_MINIMIZED set IS_MINIMIZED=1 && start "" /min "%~dpnx0" %* && exit
... script logic here ...
exit
When the script is being executed IS_MINIMIZED is not defined (if not DEFINED IS_MINIMIZED) so:
set IS_MINIMIZED=1.Script starts a copy of itself using start command && start "" /min "%~dpnx0" %* where:
"" - empty title for the window./min - switch to run minimized."%~dpnx0" - full path to your script.%* - passing through all your script's parameters.Then initial script finishes its work: && exit.
For the started copy of the script variable IS_MINIMIZED is set by the original script so it just skips the execution of the first line and goes directly to the script logic.
exit, otherwise the cmd window wouldn't be closed after the script execution.If your script doesn't accept arguments you could use argument as a flag instead of variable:
if "%1" == "" start "" /min "%~dpnx0" MY_FLAG && exit
or shorter
if "%1" == "" start "" /min "%~f0" MY_FLAG && exit