How to make a batch file run from any drive letter off of a usb drive? -



How to make a batch file run from any drive letter off of a usb drive? -

i'm putting both of these batch files on usb drive, , need find way create tyler.bat have right path when phone call tyler.bat usb drive read usb drive , load tyler.bat right path , follow through commands.

i want know how without changing drive name specific.

zieske.bat

@echo off echo you? set /p answer= if /i "%answer%"=="tyler" (call tyler.bat) if /i "%answer%"=="tyler zieske" (call tyler.bat) if /i "%answer%"=="pediatric gynocologist" (call tyler.bat) echo welcome %answer%! pause

tyler.bat

@echo off rem run shell admin (example) - set here code rem check windows version ver | findstr /i "5\.0\." > nul if %errorlevel% equ 0 goto :ver_2000 ver | findstr /i "5\.1\." > nul if %errorlevel% equ 0 goto :ver_xp ver | findstr /i "5\.2\." > nul if %errorlevel% equ 0 goto :ver_2003 ver | findstr /i "6\.0\." > nul if %errorlevel% equ 0 goto :ver_vista ver | findstr /i "6\.1\." > nul if %errorlevel% equ 0 goto :ver_win7 goto warn_and_exit :ver_win7 if exist "c:\programdata\microsoft\windows\start menu\programs\startup\tyler.bat" ( goto :yes ) else ( goto :beginning7 ) goto :ver_win7 :ver_vista if exist "c:\programdata\microsoft\windows\start menu\programs\startup\tyler.bat" ( goto :yes ) else ( goto :beginning_vista ) goto :ver_vista :ver_2003 cd "c:\documents , settings\all users\start menu\programs\startup" if exist "tyler.bat" ( goto :yes ) else ( goto :beginning2003 ) goto :ver_2003 :ver_xp cd "c:\documents , settings\all users\start menu\programs\startup" if exist "tyler.bat" ( goto :yes ) else ( goto :beginningxp ) goto :ver_xp :ver_2000 cd "c:\documents , settings\all users\start menu\programs\startup" if exist "tyler.bat" ( goto :yes ) else ( goto :beginning2000 ) goto :ver_2000 :warn_and_exit echo machine os cannot determined. pause :beginning7 cls echo. echo ============================= echo running admin shell echo ============================= :checkprivileges net file 1>nul 2>nul if '%errorlevel%' == '0' ( goto gotprivileges ) else ( goto getprivileges ) :getprivileges if '%1'=='elev' (shift & goto gotprivileges) echo. echo ************************************** echo invoking uac privilege escalation echo ************************************** setlocal disabledelayedexpansion set "batchpath=%~0" setlocal enabledelayedexpansion echo set uac = createobject^("shell.application"^) > "%temp%\oegetprivileges.vbs" echo uac.shellexecute "!batchpath!", "elev", "", "runas", 1 >> "%temp%\oegetprivileges.vbs" "%temp%\oegetprivileges.vbs" exit /b :gotprivileges :::::::::::::::::::::::::::: :start :::::::::::::::::::::::::::: setlocal & pushd . re-create tyler.bat "c:\programdata\microsoft\windows\start menu\programs\startup\tyler.bat" goto yes: :beginning_vista goto beginning7 :beginningxp cls echo. echo ============================= echo running admin shell echo ============================= :checkprivileges net file 1>nul 2>nul if '%errorlevel%' == '0' ( goto gotprivileges ) else ( goto getprivileges ) :getprivileges if '%1'=='elev' (shift & goto gotprivileges) echo. echo ************************************** echo invoking uac privilege escalation echo ************************************** setlocal disabledelayedexpansion set "batchpath=%~0" setlocal enabledelayedexpansion echo set uac = createobject^("shell.application"^) > "%temp%\oegetprivileges.vbs" echo uac.shellexecute "!batchpath!", "elev", "", "runas", 1 >> "%temp%\oegetprivileges.vbs" "%temp%\oegetprivileges.vbs" exit /b :gotprivileges :::::::::::::::::::::::::::: :start :::::::::::::::::::::::::::: setlocal & pushd . re-create tyler.bat "c:\documents , settings\all users\start menu\programs\startup" goto :yes :beginning2003 goto :beginningxp :beginning2000 goto :beginningxp :yes echo hi tyler! pause goto :tyler :tyler start iexplore.exe goto :tyler cmd /k

example of ty's answer

pushd %~dp0 ...all other code... re-create tyler.bat ...more other code...

example of ty's reply implemented code (didn't know if because of goto variables if need set pushd command re-create batch file)

zieske.bat

@echo off pushd %~dp0 echo you? set /p answer= if /i "%answer%"=="tyler" (call tyler.bat) if /i "%answer%"=="matt" (call tyler.bat) if /i "%answer%"=="matthew" (call tyler.bat) if /i "%answer%"=="matthew tassin" (call tyler.bat) if /i "%answer%"=="matt tassin" (call tyler.bat) if /i "%answer%"=="ryan" (call tyler.bat) if /i "%answer%"=="ryan ware" (call tyler.bat) if /i "%answer%"=="tyler zieske" (call tyler.bat) if /i "%answer%"=="pediatric gynocologist" (call tyler.bat) echo welcome %answer%! pause

tyler.bat

@echo off pushd %~dp0 rem check windows version ver | findstr /i "5\.0\." > nul if %errorlevel% equ 0 goto :ver_2000 ver | findstr /i "5\.1\." > nul if %errorlevel% equ 0 goto :ver_xp ver | findstr /i "5\.2\." > nul if %errorlevel% equ 0 goto :ver_2003 ver | findstr /i "6\.0\." > nul if %errorlevel% equ 0 goto :ver_vista ver | findstr /i "6\.1\." > nul if %errorlevel% equ 0 goto :ver_win7 goto warn_and_exit :ver_win7 if exist "c:\programdata\microsoft\windows\start menu\programs\startup\tyler.bat" ( goto :yes ) else ( goto :beginning7 ) goto :ver_win7 :ver_vista if exist "c:\programdata\microsoft\windows\start menu\programs\startup\tyler.bat" ( goto :yes ) else ( goto :beginning_vista ) goto :ver_vista :ver_2003 cd "c:\documents , settings\all users\start menu\programs\startup" if exist "tyler.bat" ( goto :yes ) else ( goto :beginning2003 ) goto :ver_2003 :ver_xp cd "c:\documents , settings\all users\start menu\programs\startup" if exist "tyler.bat" ( goto :yes ) else ( goto :beginningxp ) goto :ver_xp :ver_2000 cd "c:\documents , settings\all users\start menu\programs\startup" if exist "tyler.bat" ( goto :yes ) else ( goto :beginning2000 ) goto :ver_2000 :warn_and_exit echo machine os cannot determined. pause :beginning7 cls echo. echo ============================= echo running admin shell echo ============================= :checkprivileges net file 1>nul 2>nul if '%errorlevel%' == '0' ( goto gotprivileges ) else ( goto getprivileges ) :getprivileges if '%1'=='elev' (shift & goto gotprivileges) echo. echo ************************************** echo invoking uac privilege escalation echo ************************************** setlocal disabledelayedexpansion set "batchpath=%~0" setlocal enabledelayedexpansion echo set uac = createobject^("shell.application"^) > "%temp%\oegetprivileges.vbs" echo uac.shellexecute "!batchpath!", "elev", "", "runas", 1 >> "%temp%\oegetprivileges.vbs" "%temp%\oegetprivileges.vbs" exit /b :gotprivileges :::::::::::::::::::::::::::: :start :::::::::::::::::::::::::::: setlocal & pushd . pushd %~dp0 re-create tyler.bat "c:\programdata\microsoft\windows\start menu\programs\startup\tyler.bat" goto yes: :beginning_vista goto beginning7 :beginningxp cls echo. echo ============================= echo running admin shell echo ============================= :checkprivileges net file 1>nul 2>nul if '%errorlevel%' == '0' ( goto gotprivileges ) else ( goto getprivileges ) :getprivileges if '%1'=='elev' (shift & goto gotprivileges) echo. echo ************************************** echo invoking uac privilege escalation echo ************************************** setlocal disabledelayedexpansion set "batchpath=%~0" setlocal enabledelayedexpansion echo set uac = createobject^("shell.application"^) > "%temp%\oegetprivileges.vbs" echo uac.shellexecute "!batchpath!", "elev", "", "runas", 1 >> "%temp%\oegetprivileges.vbs" "%temp%\oegetprivileges.vbs" exit /b :gotprivileges :::::::::::::::::::::::::::: :start :::::::::::::::::::::::::::: setlocal & pushd . pushd %~dp0 re-create tyler.bat "c:\documents , settings\all users\start menu\programs\startup" goto :yes :beginning2003 goto :beginningxp :beginning2000 goto :beginningxp :yes echo hi tyler, ryan, or matt! pause goto :tyler :tyler start iexplore.exe goto :tyler cmd /k

if verify syntax/location of pushd %~dp0 right ctrl+f , typing in pushd %~dp0 appreciative.

do need drive letter, or need create sure current directory root of usb drive? if latter, do:

pushd %~dp0

at origin of batch file. you'll cd'ed directory in batch file lives.

batch-file usb

Comments

Popular posts from this blog

web services - java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer -

Accessing MATLAB's unicode strings from C -

javascript - mongodb won't find my schema method in nested container -