forfiles

forfiles #

ForFiles - 選択したファイルに対してコマンドを実行


forfiles #

ファイル (または、ファイルのセット) を選んで、そのファイル上のコマンドを実行します。

  • C:\Windows\system32\forfiles.exe /?

Output:


FORFILES [/P パス名] [/M 検索マスク] [/S]
         [/C コマンド] [/D [+ | -] {yyyy/MM/dd | dd}]

説明:
    ファイル (または、ファイルのセット) を選んで、そのファイル上の 
    コマンドを実行します。これはバッチ ジョブの使用に便利です。

パラメーター一覧:
    /P    パス名        検索を開始するパスを示します。
                        既定のフォルダーは現在実行中の
                        ディレクトリ (.) です。

    /M    検索マスク    検索マスクによってファイルを検索します。
                        既定の検索マスクは '*' です。

    /S                  サブディレクトリに対しても処理を行うように forfiles に
                        指示します (例: "DIR /S")。

    /C    コマンド      各ファイルの実行するコマンドを示します。
                        コマンドの文字列は二重引用符で囲んでくだ
                        さい。 

                        既定のコマンドは "cmd /c echo @file" です。

                        次の変数をコマンドの文字列に使用することができ
                        ます:
                        @file    - フィルの名前を返します。
                        @fname   - 拡張子なしのファイル名を 
                                   返します。
                        @ext     - ファイルの拡張子だけを返し 
                                   ます。
                        @path    - ファイルの完全なパスを返します。
                        @relpath - ファイルの相対パスを返し
                                   ます。
                        @isdir   - ファイルの種類がディレクトリの場合
"TRUE"を、ファイルの場合は
                                   "FALSE" を返します。
                        @fsize   - ファイルのサイズをバイトで返し 
                                   ます。
                        @fdate   - ファイルの最終更新日を返し
                                   ます。
                        @ftime   - ファイルの最終更新時刻を返し
                                   ます。

                        コマンド ラインに特殊文字を使用する場合は、 
                        文字を 16 進数コードで 0xHH 形式で (例: 
                        タブは 0x09) 指定してください。CMD.EXE の
                        内部コマンドの前には "cmd /c" が必要
                        です。

    /D    日付          最終更新日が指定された日かもしくはそれ
                        以降 (+)、または指定された日またはそれ
                        以前 (-) であるファイルを "yyyy/MM/dd" 形式を使っ
                        て選択します。または、最終更新日が現在
                        の日にちより "dd" 日あと、もしくは "dd"                        前であるファイルを選択します。有効な "dd"
                        値は 0 から 32768 の間です。
                        指定がない場合は、"+" が既定で使用さ
                        れます。
    /?                  ヘルプまたは使用法を表示します。

例:
    FORFILES /?
    FORFILES  
    FORFILES /P C:\WINDOWS /S /M DNS*.* 
    FORFILES /S /M *.txt /C "cmd /c type @file | more"
    FORFILES /P C:\ /S /M *.bat
    FORFILES /D -30 /M *.exe
             /C "cmd /c echo @path 0x09 was changed 30 days ago"
    FORFILES /D 2006/1/2
             /C "cmd /c echo @fname is new since Jan 1st 2001"
    FORFILES /D +2006/1/2 /C "cmd /c echo @fname is new today"
    FORFILES /M *.exe /D +1
    FORFILES /S /M *.doc /C "cmd /c echo @fsize" 
    FORFILES /M *.txt /C "cmd /c if @isdir==FALSE notepad.exe @file"

リターンコード: 0

>ver
Microsoft Windows [Version 10.0.19044.1288]
C:\Windows\system32\forfiles.exe
ファイル情報
サイズ52224bytes
作成日2019/12/07 18:09:37
更新日2019/12/07 18:09:37
ProductVersion10.0.19041.1889
FileVersion10.0.19041.1889 (WinBuild.160101.0800)
HashValue
MD59bb67aea5e26cb136f23f29cc48d6b9e
SHA1cabee28f7368aae1ac23f0713e2c330f96af2062
SHA224376a0f93b167ad5c334c0514ce96ec2e71be6806e4c1a676401274f7
SHA2569b4886f187489a190bb2c412772c1998539f086c63a4cfd72ff3b107cbc21907
SHA38452831636afec50a2f6fc4cbf7766f1831d513707653896695036cccf5f51e3ed4c8cf9fe299dea60634175d92c9bfb7c
SHA512ac1ea7be97cadce0abf3b581a97b32cceecdc5e7015704ef6a08e33d47f928aab4758df61efb9856057c09d31629ea080f9525b199daebaa4b945338086411bb