shift
Zmienia pozycję parametrów programu wsadowego, co pozwala na stosowanie więcej niż 10 podstawowych. Programy wsadowe obsługują 9 parametrów (od %1 do %9), podawanych przy uruchamianiu po nazwie programu, oddzielonych od siebie spacją. Nazwa programu jest oznaczana jako parametr zerowy - %0.
Po poleceniu SHIFT parametr %0 jest zapominany, a jego miejsce zajmuje parametr %1. Parametrem %1 zostaje dawny %2 itd... (wartości parametrów przesówane są w lewo). %9 przyjmuje wartość %10 normalnie nieużywanego.
np.:
plik.bat bat com exe program wsadowy został uruchomiony z trzema parametrami
:KOPIOWANIE
if "%1"=="" goto END jeżeli parametr %1 jest pusty - skok do etykiety kończącej
copy a:*.%1 C: kopiowanie wszystkich plików z rozszerzeniem określonym parametrem %1
shift przesunięcie wartości parametrów
goto KOPIOWANIE
:END
Program zostaje uruchomiony z trzema parametrami (w kodzie wykorzystywany jest tylko pierwszy, pozostałe są przesówane na jego miejsce). Zostaje sprawdzone czy parametr %1 nie jest pusty, następuje kopiowanie wszystkich plików *.bat z dyskietki na dysk. shift przesuwa parametry - %1 ma teraz wartość com. Skok do etykiety KOPIOWANIE, sprawdzenie czy %1 nie jest pusty, skopiowanie plików *.com. Ponowne przesunięcie - teraz %1 wynosi exe. Skok do etykiety KOPIOWANIE, sprawdzenie %1, skopiowanie wszystkich plików *.exe. Znowu przesunięcie, teraz parametr %1 jest pusty. Skok do etykiety KOPIOWANIE, sprawdzenie czy %1 nie jest pusty, skoro jest następuje skok do etykiety END.
//źródło http://www.informatyka.ibt.pl/dos/polecenia_bat.htm [/b]