1.Fc : 比较两个文件或文件集,并显示它们之间的差异。

refer:

适用于:Windows 7,Windows Server 2008,Windows Server 2008 R2,Windows Vista

FC [/A] [/C] [/L] [/LBn] [/N] [/OFF[LINE]] [/T] [/U] [/W] [/nnnn]
   [drive1:][path1]filename1 [drive2:][path2]filename2
FC /B [drive1:][path1]filename1 [drive2:][path2]filename2

  /A         只显示每个不同处的第一行和最后一行。
  /B         执行二进制比较。
  /C         不分大小写。
  /L         将文件作为 ASCII 文字比较。
  /LBn       将连续不匹配的最大值设置为指定
             的行数。
  /N         在 ASCII 比较上显示行数。
  /OFF[LINE] 不要跳过带有脱机属性集的文件。
  /T         不要将制表符扩充到空格。
  /U         将文件作为 UNICODE 文本文件比较。
  /W         为了比较而压缩空白(制表符和空格)。
  /nnnn      指定不匹配处后必须连续
             匹配的行数。
  [drive1:][path1]filename1
             指定要比较的第一个文件或第一个文件集。
  [drive2:][path2]filename2
             指定要比较的第二个文件或第二个文件集。

例子

要对两个文本文件Monthly.rpt和Sales.rpt进行ASCII比较,并以缩写格式显示结果,请键入:

fc /a monthly.rpt sales.rpt

要对两个批处理文件(Profits.bat和Earnings.bat)进行二进制比较,请键入:

fc /b profits.bat earnings.bat

结果类似于以下内容:

00000002: 72 43
00000004: 65 3A
0000000E: 56 92
...
...
...
000005E8: 00 6E
FC: Earnings.bat longer than Profits.bat

如果Profits.bat和Earnings.bat文件相同,则fc显示以下消息:

Comparing files Profits.bat and Earnings.bat`
FC: no differences encountered

要将当前目录中的每个.bat文件与New.bat文件进行比较,请键入:

fc *.bat new.bat

要将驱动器C上的文件New.bat与驱动器D上的文件New.bat进行比较,请键入:

fc c:new.bat d:*.bat

要将驱动器C上根目录中的每个批处理文件与驱动器D上根目录中具有相同名称的文件进行比较,请键入:

fc c:*.bat d:*.bat

2.Filescrn : 安装了文件服务器资源管理器.

refer:

适用于:Windows Server 2008

该filescrn命令安装了文件服务器资源管理器,包括用于创建和管理文件组,文件屏蔽,文件屏蔽例外和文件屏幕模板,并配置筛选文件的一般管理选项的子命令。

3.Find : 查找文件中目标字符串.

windows查找文件位置及查找文件中目标字符串dos命令中已介绍。

4.Findstr : 查找文件中目标字符串.

windows查找文件位置及查找文件中目标字符串dos命令中已介绍。

5.Finger : 显示与运行手指服务的指定系统上某个用户有关的信息.

refer:

显示与运行手指服务的指定系统上某个用户有关的信息。输出因远程系统而异。

FINGER [-l] [user]@host [...]

  -l        以长列表格式显示信息。
  user      指定需要其信息的用户。省略 user 参数将显示与指定主机上所有用户有关的信息。
  @host     指定需要其用户信息的远程系统上的服务器。

说明:

可以指定多个User@Host参数。

您必须使用连字符( - )而不是斜杠(/)为finger参数添加前缀。

仅当Internet协议(TCP / IP)协议作为网络连接中网络适配器属性中的组件安装时,此命令才可用。

Windows Server 2003不提供finger服务。

例子

要在计算机users.microsoft.com上显示user1的信息,请键入:

finger user1@users.microsoft.com

要显示计算机users.microsoft.com上所有用户的信息,请键入:

finger @users.microsoft.com

6.Flattemp : 启用或禁用平面临时文件夹。

refer:

适用于:Windows Server 2008,Windows Server 2008 R2

启用或禁用平面临时文件夹。

7.For :为一组文件中的每个文件运行指定的命令。

refer:

适用于:Windows 7,Windows Server 2003,Windows Server 2003 R2,Windows Server 2008,Windows Server 2008 R2,Windows Vista,Windows XP

为一组文件中的每个文件运行指定的命令。


FOR %variable IN (set) DO command [command-parameters]

  %variable  指定一个单一字母可替换的参数。
  (set)      指定一个或一组文件。可以使用通配符。
  command    指定对每个文件执行的命令。
  command-parameters 为特定命令指定参数或命令行开关。

在批处理程序中使用 FOR 命令时,指定变量请使用 %%variable 
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.

如果启用命令扩展,则会支持下列 FOR 命令的其他格式:

FOR /D %variable IN (set) DO command [command-parameters]

    如果set包含通配符,则指定与目录名匹配,而不与文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]

    检查以 [drive:]path 为根的目录树,指向每个目录中的 FOR 语句。
    如果在 /R 后没有指定目录规范,则使用当前目录。如果集仅为一个单点(.)字符,
    则枚举该目录树。

FOR /L %variable IN (start,step,end) DO command [command-parameters]

    该集表示以增量形式从开始到结束的一个数字序列。因此,(1,1,5)将产生序列
    1 2 3 4 5,(5,-1,1)将产生序列(5 4 3 2 1)

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

    或者,如果有 usebackq 选项:

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

    fileset 为一个或多个文件名。继续到 fileset 中的下一个文件之前,
    每份文件都被打开、读取并经过处理。处理包括读取文件,将其分成一行行的文字,
    然后将每行解析成零或更多的符号。然后用已找到的符号字符串变量值调用 For 循环。
    以默认方式,/F 通过每个文件的每一行中分开的第一个空白符号。跳过空白行。
    您可通过指定可选 "options" 参数替代默认解析操作。这个带引号的字符串包括一个
    或多个指定不同解析选项的关键字。这些关键字为:

        eol=c           - 指一个行注释字符的结尾(就一个)
        skip=n          - 指在文件开始时忽略的行数。
        delims=xxx      - 指分隔符集。这个替换了空格和跳格键的默认分隔符集。
        tokens=x,y,m-n  - 指每行的哪一个符号被传递到每个迭代的 for 本身。这会导致额外变量名称的分配。
                          m-n格式为一个范围。通过 nth 符号指定 mth。
                          如果符号字符串中的最后一个字符星号,那么额外的变量将在最后一个符号解析之后
                          分配并接受行的保留文本。
        usebackq        - 指定新语法已在下类情况中使用:在作为命令执行一个后引号的字符串并且一个单
                          引号字符为文字字符串命令并允许在 file-set中使用双引号扩起文件名称。

    某些范例可能有助:

	FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do @echo %i %j %k

    会分析 myfile.txt 中的每一行,忽略以分号打头的那些行,将每行中的第二个和第三个符号传递给 for 函数体,
    用逗号和/或空格分隔符号。请注意,此 for 函数体的语句引用 %i 来获得第二个符号,引用 %j 来获得第三个符号,
    引用%k来获得第三个符号后的所有剩余符号。对于带有空格的文件名,您需要用双引号将文件名括起来。为了用这种方式来使
    用双引号,还需要使用 usebackq 选项,否则,双引号会被理解成是用作定义某个要分析的字符串的。

    %i 在 for 语句中显式声明,%j 和 %k 是通过tokens= 选项隐式声明的。可以通过 tokens= 一行
    指定最多 26 个符号,只要不试图声明一个高于字母 "z""Z" 的变量。

    请记住,FOR 变量是单一字母、分大小写和全局的变量;而且,不能同时使用超过 52 个。

    还可以在相邻字符串上使用 FOR /F 分析逻辑,方法是,用单引号将括号之间的 file-set 括起来。这样,该字符
    串会被当作一个文件中的一个单一输入行进行解析。

    最后,可以用 FOR /F 命令来分析命令的输出。方法是,将括号之间的 file-set 变成一个反括字符串。
    该字符串会被当作命令行,传递到一个子 CMD.EXE,其输出会被捕获到内存中,并被当作文件分析。如以下例子所示:

    FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i

    会枚举当前环境中的环境变量名称。

	另外,FOR 变量参照的替换已被增强。您现在可以使用下列选项语法:

     %~I          - 删除任何引号("),扩展 %I
     %~fI        - 将 %I 扩展到一个完全合格的路径名
     %~dI        - 仅将 %I 扩展到一个驱动器号
     %~pI        - 仅将 %I 扩展到一个路径
     %~nI        - 仅将 %I 扩展到一个文件名
     %~xI        - 仅将 %I 扩展到一个文件扩展名
     %~sI        - 扩展的路径只含有短名
     %~aI        - 将 %I 扩展到文件的文件属性
     %~tI        - 将 %I 扩展到文件的日期/时间
     %~zI        - 将 %I 扩展到文件的大小
     %~$PATH:I   - 查找列在路径环境变量的目录,并将 %I 扩展
                   到找到的第一个完全合格的名称。如果环境变量名
                   未被定义,或者没有找到文件,此组合键会扩展到
                   空字符串

可以组合修饰符来得到多重结果:

     %~dpI       - 仅将 %I 扩展到一个驱动器号和路径
     %~nxI       - 仅将 %I 扩展到一个文件名和扩展名
     %~fsI       - 仅将 %I 扩展到一个带有短名的完整路径名
     %~dp$PATH:I - 搜索列在路径环境变量的目录,并将 %I 扩展
                   到找到的第一个驱动器号和路径。
     %~ftzaI     - 将 %I 扩展到类似输出线路的 DIR

在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法用一个有效的 FOR 变量名终止。
选取类似 %I 的大写变量名比较易读,而且避免与不分大小写的组合键混淆。

8.Forfiles : 选择并执行一个文件或一组文件的命令。

refer:

适用于:Windows Server 2008,Windows Vista

选择并执行一个文件或一组文件的命令。此命令对批处理很有用。

FORFILES [/P pathname] [/M searchmask] [/S]
         [/C command] [/D [+ | -] {yyyy/MM/dd | dd}]

描述:
    选择一个文件(或一组文件)并在那个文件上执行一个命令。这有助于批处理作业。

参数列表:
    /P    pathname      表示开始搜索的路径。默认文件夹是当前工作的目录 (.)。
    /M    searchmask    根据搜索掩码搜索文件。默认搜索掩码是 '*'。
    /S                  指导 forfiles 递归到子目录。像 "DIR /S"。
    /C    command       表示为每个文件执行的命令。命令字符串应该用双引号括起来。

                        默认命令是 "cmd /c echo @file"。下列变量
                        可以用在命令字符串中:

                        @file    - 返回文件名。
                        @fname   - 返回不带扩展名的文件名。

                        @ext     - 只返回文件的扩展名。

                        @path    - 返回文件的完整路径。
                        @relpath - 返回文件的相对路径。

                        @isdir   - 如果文件类型是目录,返回 "TRUE";
                                   如果是文件,返回 "FALSE"。
                        @fsize   - 以字节为单位返回文件大小。

                        @fdate   - 返回文件上一次修改的日期。

                        @ftime   - 返回文件上一次修改的时间。


                        要在命令行包括特殊字符,字符请以 0xHH
                        形式使用十六进制代码(例如,0x09 为 tab)。

                        内部 CMD.exe 命令前面应以 "cmd /c" 开始。


    /D    date          选择文件,其上一次修改日期大于或等于 (+),
                        或者小于或等于 (-) 用 "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 在 30 前就被更改。"
    FORFILES /D 2001/01/01
             /C "cmd /c echo @fname 在 2001年1月1日就是新的。"
    FORFILES /D +2019/7/18 /C "cmd /c echo @fname 今天是新的。"
    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"

例子

要列出驱动器C上的所有批处理文件,请键入:

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

要列出驱动器C上的所有目录,请键入:

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

要列出当前目录中至少有一年的所有文件,请键入:

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

要为当前目录中早于2007年1月1日的每个文件显示文件“ 文件已过期”,请键入:

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

要以列格式列出当前目录中所有文件的文件扩展名,并在扩展名前添加选项卡,请键入:

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

9.Format : 格式化磁盘以接受Windows文件。

refer:

适用于:Windows Server 2008,Windows Vista

格式化磁盘以接受Windows文件。


FORMAT volume [/FS:file-system] [/V:label] [/Q] [/A:size] [/C] [/X] [/P:passes] [/S:state]
FORMAT volume [/V:label] [/Q] [/F:size] [/P:passes]
FORMAT volume [/V:label] [/Q] [/T:tracks /N:sectors] [/P:passes]
FORMAT volume [/V:label] [/Q] [/P:passes]
FORMAT volume [/Q]

  volume          指定驱动器号(后面跟一个冒号)、装入点或卷名。
  /FS:filesystem  指定文件系统的类型(FAT、FAT32、exFAT、NTFS、或 UDF)。
  /V:label        指定卷标。
  /Q              执行快速格式化。请注意,此开关可替代 /P。
  /C              仅适于 NTFS: 默认情况下,将压缩在该新建卷上创建的文件。
  /X              如果必要,请先强制卸除卷。该卷的所有打开句柄不再有效。
  /R:revision     仅 UDF: 强制格式化为特定的 UDF 版本
                  (1.02、1.50、2.00、2.01、2.50)。
                  默认 修订版为 2.01。
  /D              仅适用于 UDF 2.50: 将复制元数据。
  /A:size         替代默认分配单元大小。强烈建议您在通常情况下使用默认 设置。
                  NTFS 支持 512、1024、2048、4096、8192、16K、32K、64K。
                  FAT 支持 512、1024、2048、4096、8192、16K、32K、64k,
                  (128k、256k 用于大于 512 个字节的扇区)。 FAT32 支持 512、
                  1024、2048、4096、8192、16k、32k、64k, (128k 、256k 用于
                  大于 512 个字节的扇区)。EXFAT 支持 512、1024、2048、4096、
                  8192、16K、32K、64K、 128K、256K、512k、1M、2M、4M、8M、16M、
                  32M。

                  请注意,FAT 及 FAT32 文件系统对卷上的群集数量施加以下限制:

                  FAT: 群集数量 <= 65526 FAT32: 65526 < 群集数量 < 4177918

                  如果判定使用指定的群集大小无法满足以上需求,将立即停止格式化。

                  大于 4096 的分配单元大小不支持 NTFS 压缩。

  /F:size 指定要格式化的软盘大小(1.44)
  /T:tracks       为磁盘指定每面磁道数。
  /N:sectors      指定每条磁道的扇区数。
  /P:passes       将卷上每个扇区的操作次数清零。
                  此开关对 /Q 无效
  /S:state        其中 "state""enable""disable"
                  默认情况下启用了短名称

要使用默认大小格式化驱动器A中的新软盘,请键入:

format a:

要对驱动器A中先前格式化的软盘执行快速格式化操作,请键入:

format a: /q

要格式化驱动器A中的软盘并为其分配卷标“DATA”,请键入:

format a: /v:DATA

10.Freedisk : 在继续安装过程之前,检查指定的磁盘空间量是否可用。

refer:

适用于:Windows Server 2008,Windows Vista

在继续安装过程之前,检查指定的磁盘空间量是否可用。

freedisk [/s <Computer> [/u [<Domain>\]<User> [/p [<Password>]]]] [/d <Drive>] [<Value>]

参数


参数	            描述
/s                <计算机>指定远程计算机的名称或IP地址(不要使用反斜杠)。
                  默认为本地计算机。此参数适用于命令中指定的所有文件和文件夹。

/u [<Domain> \]   <User>使用指定用户帐户的权限运行脚本。默认值为系统权限。

/p [<Password>]   指定/ u中指定的用户帐户的密码。

/d [<Drive>]     指定要查找可用空间可用性的驱动器。您必须为远程计算机指定<Drive><value>          检查特定数量的可用磁盘空间。您可以以字节,KB,MB,GB,TB,PB,EB,ZB或YB指定<>

11.Fsutil : 执行与文件分配表(FAT)和NTFS文件系统相关的任务.

refer:

适用于:Windows 7,Windows Server 2000,Windows Server 2003,Windows Server 2003 R2,Windows Server 2008,Windows Server 2008 R2,Windows Vista

执行与文件分配表(FAT)和NTFS文件系统相关的任务,例如管理重新分析点,管理稀疏文件或卸载卷。如果在没有参数的情况下使用它,fsutil将显示支持的子命令列表。

注意

您必须以管理员或Administrators组成员的身份登录才能使用fsutil。该FSUTIL命令是非常强大的,只应由谁拥有Windows操作系统的全面知识的高级用户使用。

12.Ftp : 与运行文件传输协议(FTP)服务器服务的计算机之间传输文件。

refer:

适用于:Windows 7,Windows Server 2008,Windows Server 2008 R2,Windows Vista

与运行文件传输协议(FTP)服务器服务的计算机之间传输文件。通过处理ASCII文本文件,可以交互方式或批处理方式使用Ftp。


将文件传送到运行 FTP 服务器服务(经常称为后台程序)的计算机以及将文件从该计算机传出。可以交互使用 Ftp。

FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [host]

  -v              禁止显示远程服务器响应。
  -n              禁止在初始连接时自动登录。
  -i              关闭多文件传输过程中的交互式提示。
  -d              启用调试。
  -g              禁用文件名通配(请参阅 GLOB 命令)。
  -s:filename     指定包含 FTP 命令的文本文件;命令
                  在 FTP 启动后自动运行。
  -a              在绑字数据连接时使用所有本地接口。
  -A              匿名登录。
  -x:send sockbuf 覆盖默认的 SO_SNDBUF 大小 8192。
  -r:recv sockbuf 覆盖默认的 SO_RCVBUF 大小 8192。
  -b:async count  覆盖默认的异步计数 3
  -w:windowsize   覆盖默认的传输缓冲区大小 65535。
  host            指定主机名称或要连接到的远程主机的 IP 地址。

注意:
  - mget 和 mput 命令将 y/n/q 视为 yes/no/quit。
  - 使用 Ctrl-C 中止命令。

例子

要登录名为ftp.example.microsoft.com的FTP服务器,请键入:

ftp ftp.example.microsoft.com

要登录名为ftp.example.microsoft.com的FTP服务器并运行名为resync.txt的文件中包含的ftp命令,请键入:

ftp -s:resync.txt ftp.example.microsoft.com

13.Ftype : 显示或修改文件扩展名关联中使用的文件类型。

refer:

适用于:Windows Server 2008,Windows Vista

显示或修改文件扩展名关联中使用的文件类型。如果在没有赋值运算符(=)的情况下使用,则ftype显示指定文件类型的当前打开命令字符串。如果在没有参数的情况下使用,则ftype显示已定义打开命令字符串的文件类型。

ftype [<FileType>[=[<OpenCommandString>]]]

显示或修改用在文件扩展名关联中的文件类型

FTYPE [fileType[=[openCommandString]]]

  fileType  指定要检查或改变的文件类型
  openCommandString 指定调用这类文件时要使用的开放式命令。

键入 FTYPE 而不带参数来显示当前有定义的开放式命令字符串的文件类型。
FTYPE 仅用一个文件类型启用时,它显示那个文件类型目前的开放式命令字符串。
如果不为开放式命令字符串指定,FTYPE 命令将删除那个文件类型的开放式命令字符串。
在一个开放式命令字符串之内,命令字符串 %0 或 %1 被通过关联调用的文件名所代替。
%* 得到所有的参数,%2 得到第一个参数,%3 得到第二个,等等。
%~n 得到其余所有以 nth 参数打头的参数;n 可以是从 2 到 9 的数字。例如:

    ASSOC .pl=PerlScript
    FTYPE PerlScript=perl.exe %1 %*

允许您启用以下 Perl 脚本:

    script.pl 1 2 3

如果不想键入扩展名,则键入以下字符串:

    set PATHEXT=.pl;%PATHEXT%

被启动的脚本如下:

    script 1 2 3

例子

要显示已定义打开命令字符串的当前文件类型,请键入:

ftype

要显示txtfile文件类型的当前打开命令字符串,请键入:

ftype txtfile

此命令生成类似于以下内容的输出:

txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1

要删除名为Example的文件类型的open命令字符串,请键入:

ftype example=

若要将.pl文件扩展名与PerlScript文件类型相关联并启用PerlScript文件类型以运行PERL.EXE,请键入以下命令:

assoc .pl=PerlScript
ftype PerlScript=perl.exe %1 %*

要在调用Perl脚本时无需键入.pl文件扩展名,请键入:

set PATHEXT=.pl;%PATHEXT%

14.Fveupdate : 将与BitLocker关联的元数据更新为最新版本。

[refer:] (https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ff830368(v=ws.10))

适用于:Windows 7,Windows Server 2008 R2

FveUpdate是一种内部使用的工具,当计算机从Windows Vista或Windows Server 2008升级到Windows 7或Windows Server 2008 R2时,由安装程序运行。它将与BitLocker关联的元数据更新为最新版本。此工具无法独立运行。

ample的文件类型的open命令字符串,请键入:

ftype example=

若要将.pl文件扩展名与PerlScript文件类型相关联并启用PerlScript文件类型以运行PERL.EXE,请键入以下命令:

assoc .pl=PerlScript
ftype PerlScript=perl.exe %1 %*

要在调用Perl脚本时无需键入.pl文件扩展名,请键入:

set PATHEXT=.pl;%PATHEXT%