.Bat File for Program installs?


Oct 25, 2001
I pulled this from a site but I am not sure if this is correct. Lets say I have 5 programs I wanted installed after i install windows does this look correct? line 2-13 I am not sure about or don't understand. I have a Samsung 2TB as my second drive and would like to install at that location

Echo off
color f0
:: overwrite your program name after the '=' ::
set ProgramNameHere=ProgramNameHere
goto start
cd users
cd %username%
cd desktop
md %ProgramNameHere%
:: overwrite your file path on the 'DATA' ::
:: overwrite your file name on the 'file1', 'file2'...
:: overwritw your file name after the 'extracting'.
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file1.txt
echo extracting file 1
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file2.txt
echo extracting file 2
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file3.txt
echo extracting file 3
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file4.txt
echo extracting file 4
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file5.txt
echo extracting file 5
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file6.txt
echo extracting file 6
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file7.txt
echo extracting file 7
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file8.txt
echo extracting file 8
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file9.txt
echo extracting file 9
ping localhost>nul
echo DATA>>C:\Users\%Username%\Desktop\%programNameHere%\file10.txt
echo extracting file 10
ping localhost>nul
goto exit

Line 2 isn't necessary. It just changes the color of the console window.
Line 4 isn't necessary
Line 5 and 6 are not necessary.
Line 45-47 are not necessary.
Line 48 just closes the console window.

The ping localhost>nul lines look like kludgy timers.

Line 11 'md' is 'make directory'.

Lines like line 15, afer you replace the DATA with a folder path to your second drive, just copies a file over.

There's nothing really install-ish. Just copying things.
By install do you only mean copy pasting some folders or files ?

If they are common program (the vlc, notepad+ and so on of the world), you can use winget for an "easy" bulk install powershell script:


#Install New apps $apps = @( @{name = "Microsoft.AzureCLI" }, @{name = "Microsoft.PowerShell" }, @{name = "Microsoft.VisualStudioCode" }, @{name = "Microsoft.WindowsTerminal"; source = "msstore" }, @{name = "Microsoft.AzureStorageExplorer" }, @{name = "Microsoft.PowerToys" }, @{name = "Git.Git" }, @{name = "Docker.DockerDesktop" }, @{name = "Microsoft.dotnet" }, @{name = "GitHub.cli" } ); Foreach ($app in $apps) { #check if the app is already installed $listApp = winget list --exact -q $app.name if (![String]::Join("", $listApp).Contains($app.name)) { Write-host "Installing:" $app.name if ($app.source -ne $null) { winget install --exact --silent $app.name --source $app.source } else { winget install --exact --silent $app.name } } else { Write-host "Skipping Install of " $app.name } }

with winget search nameOfTheApp, you can get the names of the wanted app and change them in script above, winget I think need to be installed on windows 10 first:
  • Like
Reactions: djoye
like this
I am trying to install all my personal apps.

*Side Fx Houdini
*Topaz AI programs
*Maxon C4D
*Office 365
* OBS studio

I will have a nvme 512GB i will keep that as a OS only. I will install All programs on my second nvme drive that is 2TB. That is the real goal. Thing is i don't want to do click on each program and go through the options. Just wasting time that is my goal. To set up auto install of MY programs because all these online packages don't have the programs that I use.
Build an AIO installer with nite nite

Oh, just saw your full list of apps. That won't work. I'd honestly just use powershell... can't stand bat at this point.