------------------------- MS-DOS v6.22 Help: For --------------------------- <Notes> <Examples> <Index> ---------------------------------------------------------------------------- FOR Runs a specified command for each file in a set of files. You can use this command in batch programs or at the command prompt. Syntax To use FOR in a batch program, use the following syntax: FOR %%variable IN (set) DO command [command-parameters] To use FOR from the command prompt, use the following syntax: FOR %variable IN (set) DO command [command-parameters] Parameters %%variable or %variable Represents a replaceable variable. The FOR command replaces %%variable (or %variable) with each text string in the specified set until the command (specified in the command parameter) processes all the files. Use %%variable to carry out the FOR command within a batch program. Use %variable to carry out FOR from the command prompt. (set) Specifies one or more files or text strings that you want to process with the specified command. The parentheses are required. command Specifies the command that you want to carry out on each file included in the specified set. command-parameters Specifies any parameters or switches that you want to use with the specified command (if the specified command uses any parameters or switches). *** <Syntax> <Examples> ---------------------------------------------------------------------------- FOR--Notes Using the IN and DO keywords IN and DO are not parameters, but they are required in the FOR command. If you omit either of these keywords, MS-DOS displays an error message. Using the replaceable variable To avoid confusion with the batch parameters %0 through %9, you can use any character for variable except the numerals 0 through 9. For simple batch programs, a single character such as %%F may be all that is necessary. You can use multiple values for variable in complex batch programs to distinguish different replaceable variables. However, you cannot nest (add) multiple FOR commands on the same command line. Specifying a group of files The set parameter can represent a single group of files or several groups of files. You can use wildcards (* and ?) to specify a file set. The following are valid file sets: (*.doc) (*.doc *.txt *.me) (jan*.doc jan*.rpt feb*.doc feb*.rpt) (ar??1991.* ap??1991.*) When you use the FOR command, the first value in set replaces %%variable (or %variable) and MS-DOS carries out the specified command in order to process this value; this continues until MS-DOS has processed all the files (or groups of files) that correspond to the value (or values) in set. *** <Syntax> <Notes> ---------------------------------------------------------------------------- FOR--Examples Suppose you want to use the TYPE command to display the contents of all the files in the current directory that have the extension .DOC or .TXT. To do this and to use the replaceable variable %F, type the following command at the command prompt: for %f in (*.doc *.txt) do type %f In this example, each file that has the .DOC or .TXT extension in the current directory is substituted for the %F variable until the contents of every file are displayed. To use this command in a batch file, you would replace every occurrence of %F with %%F. Otherwise, MS-DOS ignores the variable and displays an error message. MS-DOS supports command switches, pipes, and redirection that you may want to use with the specified command. For example, to redirect the output of the previous example to PRN (the default printer port), you would type the following command: for %f in (*.doc *.txt) do type %f > prn: *** ---------------------------------------------------------------------------- <Top of page>
Last update: December 07, 2002 14:45 by Content © 1997 Microsoft Corporation All else © 2000-2005 |