> For the complete documentation index, see [llms.txt](https://chaoses-ib.gitbook.io/directory-opus/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://chaoses-ib.gitbook.io/directory-opus/guan-fang-shou-ce/readme.zh-10/readme.zh-2/readme.zh/filetype.zh.md).

# FileType

**命令参数：**

<table><thead><tr><th>参数</th><th>类型</th><th>可能值</th><th>描述</th></tr></thead><tbody><tr><td>ACTION</td><td></td><td><em>&#x3C;事件></em></td><td><p>对所选文件触发文件类型定义的事件。例如，你可以用这个来触发按钮或热键上的文件的拖放事件。这是 <strong>FileType</strong> 命令的默认参数 - 你不需要指定 <strong>ACTION</strong> 关键字。</p><p>值必须是下列事件关键字之一：<strong>open</strong>, <strong>explore</strong>, <strong>find</strong>, <strong>print</strong>, <strong>shellex</strong>, <strong>drop</strong>, <strong>dropshift</strong>, <strong>dropctrl</strong>, <strong>dropalt</strong>, <strong>dblclk</strong>, <strong>dblclkshift</strong>, <strong>dblclkctrl</strong>, <strong>dblclkalt</strong>, <strong>mdblclk</strong>, <strong>mdblclkalt</strong>, <strong>mdblclkshift</strong> 和 <strong>mdblclkctrl</strong>。</p><p><em>示例：</em> <code>FileType drop</code></p><p><strong>shellex</strong>（shell 执行）操作特殊，因为它绕过 Opus 自己的逻辑和配置/覆盖项的大部分，将请求传递给 Windows shell 去执行。当它自身使用的时候，它将做同样的事情，即在文件资源管理器中双击目标文件或文件夹。这通常与 <strong>dblclk</strong>（双击）操作相同，而后者通常与 <strong>open</strong> 操作相同，但在 Opus 和 shell 之间有差异，以及 Opus 中不影响 shell 的配置覆盖项。你可以进一步使用 <strong>SHELLCLASS</strong> 和 <strong>SHELLVERB</strong> 参数修改 <strong>shellex</strong> 操作的内容。</p></td></tr><tr><td>CONTEXTFORCE</td><td>/S</td><td><em>（无值）</em></td><td><p>当与 <strong>CONTEXTMENU</strong> 参数一起使用时，这将覆盖配置中 <a href="/pages/GWI3twP44Qtsv1OYgt7r"><strong>杂项/Windows 集成</strong></a> 页上的 <strong>在文件上下文菜单中隐藏 Windows 项</strong> 选项。</p><p><em>示例：</em> <code>FileType CONTEXTMENU CONTEXTFORCE</code></p></td></tr><tr><td>CONTEXTMENU</td><td>/O</td><td><em>（无值）</em></td><td><p>显示选定的文件和文件夹的标准系统上下文菜单（作为 <a href="/pages/ac3KBk4vzswM7YR4eYk8">动态按钮</a>）。这样可以将上下文菜单嵌入到下拉菜单中（例如，用于默认的文件菜单）。你还可以将其与 <strong>CONTEXTFORCE</strong> 选项结合使用，将完整的 Windows 上下文菜单分流到普通上下文菜单的子菜单中。</p><p><em>示例：</em> <code>FileType CONTEXTMENU</code></p></td></tr><tr><td></td><td></td><td><em>&#x3C;GUID></em></td><td><p>显示指定上下文菜单扩展添加的任何上下文菜单项。这让你能够（结合 <strong>在文件上下文菜单中隐藏 Windows 项</strong> 选项）精确控制哪些上下文菜单项显示在你的上下文菜单上。你需要知道有问题的上下文菜单扩展的 GUID，并且在本文档帮助的范围内找不到解决方法 - 相反，请参阅 Opus 资源中心的 <a href="https://resource.dopus.com/t/tip-organise-and-speed-up-context-menus/1204?u=chaoses-ib">此文章</a> 来了解如何使用此功能的示例。</p><p><em>示例：</em> <code>FileType CONTEXTMENU {FB314ED9-A251-47B7-93E1-CDD82E34AF8B} CONTEXTFORCE</code></p></td></tr><tr><td></td><td></td><td><em>&#x3C;文件类别></em></td><td><p>显示指定文件类别的任何上下文菜单。这让你能够（结合 <strong>在文件上下文菜单中隐藏 Windows 项</strong> 选项）精确控制哪些上下文菜单项显示在你的上下文菜单上。</p><p><em>示例：</em> <code>FileType CONTEXTMENU jpegfile</code></p></td></tr><tr><td>CONTEXTOPTIONS</td><td>/K</td><td><strong>INCLUDE=</strong><em>&#x3C;类型></em></td><td><p>当与 <strong>CONTEXTMENU Directory\Background</strong> 结合使用时，这让你可以包含特定文件类型（且排除所有其它文件类型）从添加的 shell <em>新建</em> 菜单中。请注意，你必须将值用引号引起来，因为它包含一个等号，否则会混淆命令解析器。</p><p><em>示例：</em> <code>FileType CONTEXTMENU Directory\Background CONTEXTOPTIONS "INCLUDE=.bmp,.jpg,.gif"</code></p></td></tr><tr><td></td><td></td><td><strong>EXCLUDE=</strong><em>&#x3C;类型></em></td><td><p>当与 <strong>CONTEXTMENU Directory\Background</strong> 一起使用时，从生成的 shell <em>新建</em> 菜单中排除指定的文件类型。你还可以使用*在该上下文中完全禁用新建菜单。</p><p><em>示例：</em> <code>FileType CONTEXTMENU Directory\Background CONTEXTOPTIONS "EXCLUDE=*"</code></p></td></tr><tr><td></td><td></td><td><strong>windowsonly</strong></td><td><p>你可以指定 <strong>CONTEXTOPTIONS=windowsonly</strong> 一次性添加所有“Windows”上下文菜单项。（这意味着所有不特定于 Opus 的上下文菜单项，并且可能包括使用 Windows 上下文菜单 API 添加的 3rd 方程序的菜单项。）</p><p>你可以将其与配置选项 <em>在文件上下文菜单中隐藏 Windows 项</em> 结合使用，将所有“Windows”上下文菜单项移动到子菜单。</p><p>与上面描述的 <strong>INCLUDE</strong> 和 <strong>EXCLUDE</strong> 不同，<strong>windowsonly</strong> <em>不</em> 仅限于 <strong>Directory\Background</strong> 菜单。</p><p><em>示例：</em> <code>Filetype CONTEXTMENU CONTEXTOPTIONS=windowsonly</code></p></td></tr><tr><td>EDIT</td><td>/S</td><td><em>（无值）</em></td><td><p>显示对应于所选文件的文件类型定义的 <a href="/pages/LqAJtyFKr9qEAvikEXl1">文件类型编辑器</a>。你可以将该命令添加到 <em>所有文件和文件夹</em> 的上下文菜单，从而使你能快速编辑任何文件的文件类型定义。</p><p><em>示例：</em> <code>FileType EDIT</code></p></td></tr><tr><td>FILE</td><td>/K/M</td><td><em>&#x3C;文件名> ...</em></td><td><p>指定要执行文件类型操作的文件名。如果没有指定，将使用当前源文件夹中所有选定的文件。</p><p><em>示例：</em> <code>FileType open FILE C:\Data\sales.xls</code></p></td></tr><tr><td>FILECONTEXT</td><td><em>/S</em></td><td><em>（无值）</em></td><td><p>创建一个按钮，当点击右键时，显示 <strong>FILE</strong> 参数指向的文件或文件夹的上下文菜单。当点击左键时，按钮的作用与不带 <strong>FILECONTEXT</strong> 参数的情况相同。</p><p>（这必须用于普通按钮的左键操作来修改对按钮点击右键时做出的操作。它无法在单独具有左键、右键和中键操作的“三键”中使用。）</p><p><em>示例：</em> <code>FileType ACTION=dblclk FILECONTEXT FILE="C:\MyApp.exe"</code></p></td></tr><tr><td>FROMCLIPBOARD</td><td>/O</td><td><em>（无值）</em></td><td><p>与 <strong>NEW</strong> 参数一起使用，从剪贴板内容中创建具有相应名称的一个或多个新文件。这被设计为两部分操作的第二部分；第一部分是使用 <a href="/pages/E6PSltbzdP3qQdtS3SNE"><strong>剪贴板</strong></a> <strong>COPYNAMES</strong> 命令将一个或多个文件的文件名复制到剪贴板。 对于剪贴板中的每个文件名，Opus 都会创建一个指定类型的新文件。如果剪贴板包含完全限定的路径名，则新文件将与源文件创建在相同的位置（除非被 PATH 参数覆盖）。如果剪贴板仅包含没有路径的文件名，则新文件将在当前源文件列表中创建。</p><p><em>示例:</em> <code>FileType NEW=.txt FROMCLIPBOARD</code></p></td></tr><tr><td></td><td></td><td><strong>keepext</strong></td><td><p>指定此参数以保留剪贴板上的文件的文件扩展名。</p><p><em>示例:</em> <code>FileType NEW=.txt FROMCLIPBOARD=keepext</code></p></td></tr><tr><td>HEADING</td><td>/O</td><td><em>(无值)</em></td><td><p>当用于生成项列表的命令时（参见 <a href="/pages/ac3KBk4vzswM7YR4eYk8">动态按钮</a>），<strong>HEADING</strong> 参数在列表开始处添加一个小的标题。当列表为空时，标题将被隐藏。标题仅适用于可能会在与该按钮相同的级别上生成多个项目命令。</p><p>当单独使用 <strong>HEADING</strong> 时，而未指定文本值，按钮的主要文本标签将用于标题。</p><p><em>示例:</em> <code>FileType SENDTOMENU=nosub HEADING</code></p></td></tr><tr><td></td><td></td><td><em>&#x3C;标题文本></em></td><td><p>如果希望标题文本不同于按钮标签，则可以指定标题文本。</p><p><em>示例:</em> <code>FileType CONTEXTMENU HEADING="RMB 菜单"</code></p></td></tr><tr><td>NEW</td><td>/K</td><td><em>&#x3C;文件类型></em></td><td><p>创建指定类型的新文件。这等效于从 <em>新建</em> 上下文菜单中选择适当的项。只有注册有“新建”处理程序的文件才能以这种方式创建 - 因此，如果文件类型不显示在 <em>新建</em> 上下文菜单中，你将无法使用此命令创建此类文件。使用 <strong>NEWNAME</strong> 参数修改新文件的默认名称。</p><p>你还可以通过指定 <strong>directory</strong> 作为文件类型来创建目录。</p><p><em>示例:</em> <code>FileType NEW .txt</code><br><em>示例:</em> <code>FileType NEW=directory NEWNAME="我的目录"</code></p><p><strong>FileType NEW</strong> 命令自动将名为 <strong>newfile</strong> 的 <a href="/pages/xSlUDolDFmuTvwtijnkh">变量</a> 设置为新建文件的文件名。要插入变量，请使用 <strong>{$newfile}</strong>。</p></td></tr><tr><td>NEWCOUNT</td><td>/K/N</td><td><em>&#x3C;计数></em></td><td><p>允许一次创建多个新文件。这相当于多次运行 <strong>FileType NEW</strong> 命令。</p><p><em>示例:</em> <code>FileType NEW .txt NEWCOUNT 10</code></p></td></tr><tr><td>NEWMENU</td><td>/S</td><td><em>(无值)</em></td><td><p>显示 Shell <em>新建</em> 菜单，该菜单允许你通过从菜单中选择适当的项来创建各种类型的新文件（充当 <a href="/pages/ac3KBk4vzswM7YR4eYk8">动态按钮</a>）。这让你可以将 <em>新建</em> 菜单嵌入到下拉菜单中。</p><p><em>示例:</em> <code>FileType NEWMENU</code></p></td></tr><tr><td>NEWNAME</td><td>/K</td><td><em>&#x3C;新文件名></em></td><td><p>在创建新文件时通过 <strong>NEW</strong> 参数指定文件名。如果你未指定文件名的名称，将使用默认文件名。默认情况下，Opus 在创建新文件时在该新项上启动内联重命名，允许你对其重命名。如果你希望指定自己的文件名并防止内联重命名行为，请使用 <strong>norename:</strong> 字符串为文件名加前缀。</p><p>当主文件名已存在时，你还可以指定第二个文件名。这在与 <strong>NEWCOUNT</strong> 参数一起使用时非常有用，可以一次创建多个文件。在这种情况下，Opus 通常会在文件名末尾附加一个递增数字（用括号括住） - 通过使用 <strong>NEWNAME</strong> 参数指定一个第二个文件名，你可以控制插入该数字的位置。为此，在新名称末尾添加一个冒号，后面跟第二个名称。使用 <strong>%c</strong> 代码标记你希望插入数字的位置。你还可以使用 <strong>%Nc</strong> 指定数字应以零填充 - 例如，使用 <strong>%5c</strong> 填充为 5 位数字。你也可以省略主文件名，并在需要时对第一个文件自动编号。</p><p><em>示例:</em> <code>FileType NEW .txt NEWNAME "norename:Text File.txt"</code><br><em>示例:</em> <code>FileType NEW .txt NEWNAME=":Text %3c.txt" NEWCOUNT=20</code></p></td></tr><tr><td>OPENWITHMENU</td><td>/S</td><td><em>(无值)</em></td><td><p>显示 Shell <em>打开方式</em> 菜单，该菜单允许你选择程序来打开所选文件（充当 <a href="/pages/ac3KBk4vzswM7YR4eYk8">动态按钮</a>）。这让你可以将 <em>打开方式</em> 菜单嵌入到下拉菜单中。</p><p><em>示例:</em> <code>FileType OPENWITHMENU</code></p></td></tr><tr><td>PATH</td><td>/K</td><td><em>&#x3C;路径></em></td><td><p>将其与 <strong>NEW</strong> 参数结合使用，以便在当前源文件列表外的其它位置创建新文件。请注意，当使用此参数时，新创建的文件不会自动进入内联重命名模式。</p><p><em>示例:</em> <code>FileType NEW .txt PATH "{destpath}"</code></p></td></tr><tr><td>SENDTOMENU</td><td>/S</td><td><em>(无值)</em></td><td><p>显示 Shell 发送到菜单，该菜单允许你将所选文件和文件夹发送到各种程序和目标（充当 <a href="/pages/ac3KBk4vzswM7YR4eYk8">动态按钮</a>）。</p><p><em>示例:</em> <code>FileType SENDTOMENU</code></p></td></tr><tr><td></td><td></td><td><strong>nosub</strong></td><td><p>默认情况下，发送到菜单显示为子菜单；通过添加 <strong>nosub</strong> 值，发送到列表中的项将直接添加到包含 <strong>FileType SENDTOMENU</strong> 命令的工具栏或下拉菜单中。</p><p><em>示例:</em> <code>FileType SENDTOMENU=nosub</code></p></td></tr><tr><td></td><td></td><td><strong>shift</strong></td><td><p>强制以 &#x3C;Shift 键按下状态生成发送到菜单。在某些版本的 Windows 中，按住 Shift 时会显示一个扩展菜单。</p><p><em>示例:</em> <code>FileType SENDTOMENU=nosub,shift</code></p></td></tr><tr><td>SHELLCLASS</td><td>/K</td><td><em>&#x3C;类></em></td><td><p>当与 <strong>ACTION=shellex</strong> 结合使用时，<strong>SHELLCLASS</strong> 参数允许你指定文件类型或应用程序类别的名称，Shell 应将其用于执行。这些名称来自 Windows 注册表的 HKEY_CLASSES_ROOT 部分。指定一个类允许你指示 shell 使用特定程序打开文件，即使它未关联为该文件类型的默认处理程序。</p><p><em>示例:</em> <code>FileType ACTION=shellex SHELLCLASS=Photoshop.Image.20</code></p><p>请注意，虽然这对于诸如无法以正常方式运行的 Microsoft Store 应用程序之类的东西很有用，但通常有更容易的方法来执行此操作！如果你只需要在特定文件上运行特定程序，通常可以直接运行该程序并传递 <strong>{filepath}</strong> 参数。上面的示例的一个不太生硬的版本根本不会使用 <strong>FileType</strong> 命令：</p><pre><code>C:\Program Files\Photoshop\Photoshop.exe" {filepath}
</code></pre></td></tr><tr><td>SHELLVERB</td><td>/K</td><td><em>&#x3C;动词></em></td><td>当与 <strong>ACTION=shellex</strong> 结合使用时，<strong>SHELLVERB</strong> 参数允许你指定文件类型动词，以请求 Shell 执行。这与 <strong>ACTION</strong> 参数的其它可能值有些重叠，主要区别在于执行是由 Windows Shell（而不是 Opus）执行，而且你可以同时使用 <strong>SHELLCLASS</strong> 参数。 <em>示例：</em> <code>FileType ACTION=shellex SHELLCLASS=Photoshop.Image.20 SHELLVERB=print</code></td></tr><tr><td>摘要</td><td>/O</td><td><em>&#x3C;无值></em></td><td><p>显示一个包含饼状图的对话框，饼状图指示当前文件夹中的文件类型及其相对比例。</p><p>该对话框有许多选项：</p><ul><li>选择的/全部 - 饼状图是应用于文件夹中的所有文件还是仅应用于所选文件</li><li>文件计数/大小 - 是否按文件数量（计数）或总大小对文件类型进行排序</li><li>扩展名/组 - 饼状图表示各个文件扩展名还是 <a href="/pages/5N1kfBOsGAsdrXWpnoQz">文件类型组</a>。</li></ul><p>默认情况下，该对话框会记住最近使用的设置。您可以使用此命令的可选参数来覆盖默认设置。</p><p><em>示例：</em> <code>FileType SUMMARY</code></p></td></tr><tr><td></td><td></td><td><strong>all</strong></td><td><p>饼状图应应用于文件夹中的所有文件，而不是已选择的文件。</p><p><em>示例：</em> <code>FileType SUMMARY=all</code></p></td></tr><tr><td></td><td></td><td><strong>ascending</strong></td><td><p>文件类型应按升序（从最少组到最多组）排序，而不是按降序排序。请注意，此选项当前不能通过用户界面获得，只能通过命令行获得。</p><p><em>示例：</em> <code>FileType SUMMARY=groups,ascending</code></p></td></tr><tr><td></td><td></td><td><strong>count</strong></td><td><p>文件类型应按文件总数进行排序。</p><p><em>示例：</em> <code>FileType SUMMARY=count</code></p></td></tr><tr><td></td><td></td><td><strong>ext</strong></td><td><p>应按扩展名而非文件类型组对文件类型进行分组。</p><p><em>示例：</em> <code>FileType SUMMARY=ext,all</code></p></td></tr><tr><td></td><td></td><td><strong>groups</strong></td><td><p>文件类型应按文件类型组而非扩展名进行分组。</p><p><em>示例：</em> <code>FileType SUMMARY=groups</code></p></td></tr><tr><td></td><td></td><td><strong>nomerge</strong></td><td><p>默认情况下，“相似”的文件类型被视为相同类型，例如 <strong>*.jpg</strong> 和 <strong>*.jpeg</strong>。使用 <strong>nomerge</strong> 选项将它们拆分并将其视为各个类型。</p><p><em>示例：</em> <code>FileType SUMMARY=nomerge,size</code></p></td></tr><tr><td></td><td></td><td><strong>selected</strong></td><td><p>饼状图应仅应用于文件夹中的已选文件，而不是所有文件。</p><p><em>示例：</em> <code>FileType SUMMARY=selected</code></p></td></tr><tr><td></td><td></td><td><strong>size</strong></td><td><p>文件类型应按文件总大小而不是文件数量进行排序。</p><p><em>示例：</em> <code>FileType SUMMARY=size,ext</code></p></td></tr></tbody></table>
