Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 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


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026