Windows 中与 --help 或 man page 等效的是什么?

Windows 中与 --help 或 man page 等效的是什么?

如果我想知道 Linux 程序的选项是什么,我会执行man programprogram --help查找。在 Windows 上如何做到这一点?

我正在阅读有关如何从命令行运行屏幕保护程序的信息,并且发现了这个文件:

%SYSTEMROOT%\system32\scrnsave.scr

直接调用时,将启动该屏幕保护程序的设置页面,而不是实际的屏幕保护程序。

我试了help scrnsave.scr很多scrnsave.scr /?次,但都不起作用。直到我尝试谷歌,我才找到命令行选项在 MSDN 文章中间,并且知道我必须使用:

%SYSTEMROOT%\system32\scrnsave.scr /s

我怎么知道 /s 选项?在 Windows 命令行中查找程序选项的正确方法是什么?

答案1

那里不是正确的方法。但在 Unix 上也没有。这个--help惯例实际上是GNU惯例。它在 Linux 发行版中很普遍,其中操作系统实用程序是 GNU 实用程序。但是你不会在 BSD 上的操作系统实用程序中看到它,例如:

$ /bin/sh --help
Illegal option --
$ nawk --help
nawk: no program given

$

正如--help许多人认为该惯例是个好主意并采纳一样;许多人认为该/?惯例(起源于 DR-DOS 5.0 的惯例/H)是个好主意并采纳。您会发现许多命令都支持它。但同样,并非所有 Unix 或 Linux 中的命令都支持它,--help并非所有 DOS 或 Windows NT 中的命令都支持它/?

您可能认为这man可以解决问题。然而,多亏了 GNU info,以及一些程序维护者似乎只将信息(有时甚至是命令行选项等基本信息)放在页面中info,而不放在man页面中,反之亦然,这并不是人们想象中的万能药。

man在 DOS 和 Windows NT 世界中并没有真正对应的版本。最接近的版本是help命令,在 DR-DOS 5.0 及更高版本和 MS-DOS 6.0 及更高版本中将查找命令在帮助页面数据库中并显示该页面。这里的问题是,尽管操作系统自己的所有管理实用程序都在此数据库中有页面,但几乎没有其他程序有此页面,并且系统很难添加第三方信息。

(DR-DOS 6.0 中引入的 DOSBook 是所有商业 DOS 中最好的。MS-DOS 使用 QuickHelp 文件,这是一种编译工具,它不随基本操作系统提供。PC-DOS 7 有 IPF 系统,这是一种编译工具,操作系统同样缺乏它。OS/2 有与 PC-DOS 相同的 IPF 系统,以及与之集成的 HELP 命令,尽管编译器 IPFC 再次位于开发人员工具包中,而不是操作系统的包装盒中。许多年前,我写道对提供的 HELP 命令进行了改进可以配置哪个命令引用s它默认使用环境变量查找命令。我还为一些我编写的命令提供了扩展的命令参考书。)

Windows NT 仍然help命令直到今天。与 MS-DOS 6 相比,这是一个倒退,更不用说与 DR-DOS、PC-DOS 和 OS/2 相比了。

因此实际答案是:您应该浏览 MSDN,或阅读其他人的 WWW 站点,或阅读一本书,或阅读源代码(如果它是开源的),或者只是通过心灵感应了解……

话虽如此,WWW 上的文档并不是一件坏事,而且如今人们普遍期待这样做。(尽管人们可能会错过 IPFC 构建索引和目录之类的东西。☺)正如您所见,Microsoft 在 TechNet 和 MSDN 上记录了大量命令行命令。

进一步阅读

答案2

对于纯 Windows 程序,显示帮助通常是/?。然而,越来越多的跨平台程序出现,它们使用-?--help甚至其他命令。

实际上,Windows 程序根本不需要支持任何帮助输出,因此这完全取决于程序开发人员。

屏幕保护程序有点特殊,因为微软已经定义了屏幕保护程序必须支持哪些功能。而你发现的正是这个定义。显然微软没有定义任何强制的/?命令行开关。

相关内容