shift(CMD) 19 June 1992 shift(CMD) Name shift - change the position of replaceable parameters in a batch file Syntax shift Notes How the shift command works The shift command changes the values of the replaceable parameters %0 through %9, by copying each parameter into the previous one. In other words, the value of %1 is copied to %0, the value of %2 is copied to %1, and so on. This is useful for writing a batch file that performs the same operation on any number of parameters. Working with more than 10 command-line parameters You can also use the shift command to create a batch file that can accept more than 10 parameters. If you specify more than 10 parameters on the command line, those that appear after the tenth (%9) will be shifted one at a time into %9. Shifting parameters back There is no backward shift command. Once you carry out the shift com- mand, you cannot recover the first parameter (%0) that existed before the shift. Example The following batch file, MYCOPY.BAT, shows how to use the shift command with any number of parameters. It copies a list of files to a specific directory. The parameters are the directory name followed by any number of filenames. @@echo off rem MYCOPY.BAT copies any number of files rem to a directory. rem The command uses the following syntax: rem mycopy dir file1 file2 ... set todir=%1 :getfile shift if ``%1"==''" goto end copy %1 %todir% goto getfile :end set todir= echo All done