forfilesforfiles

選択し、ファイルまたはファイルのセットでコマンドを実行します。Selects and executes a command on a file or set of files. このコマンドは、バッチ処理に適しています。This command is useful for batch processing.

このコマンドを使用する方法の例については、を参照してください。For examples of how to use this command, see Examples.

構文Syntax

forfiles [/p <Path>] [/m <SearchMask>] [/s] [/c "<Command>"] [/d [{+|-}][{<Date>|<Days>}]]

パラメーターParameters

パラメーターParameter 説明Description
/p<パス >/p <Path> 検索を開始する対象のパスを指定します。Specifies the path from which to start the search. 既定では、検索は、現在の作業ディレクトリで開始します。By default, searching starts in the current working directory.
/m<マスク >/m <SearchMask> 指定した検索マスクに従ってファイルを検索します。Searches files according to the specified search mask. 既定の検索のマスクが *.\ *.The default search mask is *.\*.
/s/s 指示、ファイルを探す再帰的にサブディレクトリを検索するコマンド。Instructs the forfiles command to search into subdirectories recursively.
/c"<コマンド >"/c "<Command>" 各ファイルでは、指定されたコマンドを実行します。Runs the specified command on each file. コマンド文字列を引用符で囲む必要があります。Command strings should be enclosed in quotation marks. 既定のコマンドは "cmd/c echo @file" します。The default command is "cmd /c echo @file".
/d [{+|-}]⁠[{<Date>|⁠<Days>}]/d [{+|-}]⁠[{<Date>|⁠<Days>}] 最終更新日を指定した期間内のファイルを選択します。Selects files with a last modified date within the specified time frame.
-最終更新日を以降のファイルを選択します ( + ) より前またはと等しく ( - ) 指定した日付、日付年/月/日の形式です。- Selects files with a last modified date later than or equal to (+) or earlier than or equal to (-) the specified date, where Date is in the format MM/DD/YYYY.
-最終更新日を以降のファイルを選択します ( + )、現在の日付の日数を指定すると、またはより前かと等しい ( - )、現在の日付日数を引いた次のように指定します。- Selects files with a last modified date later than or equal to (+) the current date plus the number of days specified, or earlier than or equal to (-) the current date minus the number of days specified.
-有効な値768 範囲 0 ~ 32 の任意の数が含まれます。- Valid values for Days include any number in the range 0–32,768. 記号が指定されていない場合 + 既定で使用されます。If no sign is specified, + is used by default.
/?/? コマンド プロンプトにヘルプを表示します。Displays help at the command prompt.

注釈Remarks

  • ファイルを探すはバッチ ファイルで最もよく使用します。Forfiles is most commonly used in batch files.
  • ファイルを探す/sのようなdir/s します。Forfiles /s is similar to dir /s.
  • 指定されたコマンド文字列で、次の変数を使用することができます、 /cコマンド ライン オプション。You can use the following variables in the command string as specified by the /c command-line option.
変数Variable 説明Description
@FILE ファイル名。File name.
@FNAME 拡張子を除いたファイル名。File name without extension.
@EXT ファイル名拡張子。File name extension.
@PATH ファイルの完全パス。Full path of the file.
@RELPATH ファイルの相対パス。Relative path of the file.
@ISDIR ファイルの種類がディレクトリの場合に、TRUE に評価されます。Evaluates to TRUE if a file type is a directory. それ以外の場合、この変数は、FALSE に評価されます。Otherwise, this variable evaluates to FALSE.
@FSIZE ファイルのサイズ (バイト単位)。File size, in bytes.
@FDATE ファイルの最終変更された日付スタンプ。Last modified date stamp on the file.
@FTIME ファイルの最終更新時刻スタンプ。Last modified time stamp on the file.
  • ファイルを探すのコマンドを実行または、複数のファイルに引数を渡すことができます。With forfiles, you can run a command on or pass arguments to multiple files. たとえば、実行する、.txt ファイル名拡張子を持つツリー内のすべてのファイルをコマンド。For example, you could run the type command on all files in a tree with the .txt file name extension. または、すべてのバッチ ファイルを実行する可能性があります (* .bat) ドライブ C 上のファイルに名前"Myinput.txt"最初の引数として。Or you could execute every batch file (*.bat) on drive C, with the file name "Myinput.txt" as the first argument.
  • ファイルを探す次のいずれかを行うことができます。With forfiles, you can do any of the following:
    • 使用して検証する絶対的日付または相対的な日付でファイルを選択、 /dパラメーター。Select files by an absolute date or a relative date by using the /d parameter.
    • などの変数を使用して、ファイルのアーカイブ ツリーを構築@FSIZEと@FDATEします。Build an archive tree of files by using variables such as @FSIZE and @FDATE.
    • 使用してディレクトリからファイルを区別する、@ISDIR変数。Differentiate files from directories by using the @ISDIR variable.
    • コマンド ラインで、文字、0 x の 16 進コードを使用して特殊文字を含めるHH形式 (たとえば、タブの 0x09)。Include special characters in the command line by using the hexadecimal code for the character, in 0xHH format (for example, 0x09 for a tab).
  • ファイルを探す動作を実装することによって、サブディレクトリを再帰フラグを 1 つのファイルのみを処理するように設計されたツールです。Forfiles works by implementing the recurse subdirectories flag on tools that are designed to process only a single file.

Examples

すべてのドライブ C 上のバッチ ファイルを一覧表示するには、次のように入力します。To list all of the batch files on drive C, type:

forfiles /p c:\ /s /m *.bat /c "cmd /c echo @file is a batch file"

すべてのドライブ C 上のディレクトリを一覧表示するには、次のように入力します。To list all of the directories on drive C, type:

forfiles /p c:\ /s /m *.* /c "cmd /c if @isdir==TRUE echo @file is a directory"

1 年以上前である、現在のディレクトリ内のファイルの全一覧を表示には、次のように入力します。To list all of the files in the current directory that are at least one year old, type:

forfiles /s /m *.* /d -365 /c "cmd /c echo @file is at least one year old."

テキストを表示する"ファイルは期限切れ"の各 2007 年 1 月 1 日以上経過した現在のディレクトリにファイルの入力します。To display the text "File is outdated" for each of the files in the current directory that are older than January 1, 2007, type:

forfiles /s /m *.* /d -01/01/2007 /c "cmd /c echo @file is outdated." 

拡張子の前に タブを追加、列の形式で現在のディレクトリ内のすべてのファイルのファイル名拡張子の一覧を表示して、次のように入力します。To list the file name extensions of all the files in the current directory in column format, and add a tab before the extension, type:

forfiles /s /m *.* /c "cmd /c echo The extension of @file is 0x09@ext" 

その他の参照情報Additional references

コマンド ライン構文の記号Command-Line Syntax Key