在哪里可以找到可以从 cmd.exe 执行的命令列表?

在哪里可以找到可以从 cmd.exe 执行的命令列表?

在 Windows Vista 中,

Start->Run->cmd

打开cmd.exe

在哪里可以找到所有命令的列表可以在那里执行吗?

今天我才知道盖特马克.我曾经使用ipconfig/全部盖特马克非常方便。

答案1

正如其他人指出的那样,“dir *.exe /s”将找到驱动器上的所有 EXE,并且假设您有权限这样做,您可以直接执行它们所有(只要您包含绝对路径)。

“帮助”命令会给你提供 MS 基本内置功能的列表。

但假设您想要一个真正的答案,a)实际命令列表,b)您不需要完整路径名即可运行,c)包含您系统上的所有内容,而不仅仅是 Microsoft 的工具,您需要以编程方式发现它。

我不知道如何在 DOS(或 CMD)中执行此操作,但我可以给你提供步骤。

  1. 对于您的每个目录小路环境变量,
  2. 列出所有以以下扩展名结尾的文件路径文本环境变量。

当您输入命令时,PATH 是 Windows 查找该命令的位置列表,PATHEXT 是它将附加到该命令以匹配文件的文件扩展名列表。两者都是以分号分隔的列表,并且都按顺序进行搜索。这是我的系统:

PATH=c:\WINDOWS\system32;c:\WINDOWS;C:\cygwin\usr\local\bin;C:\cygwin\bin;C:\cygwin\bin;c:\Perl\bin\;c:\Python24;c:\Python24\bin;c:\WINDOWS\System32\Wbem;c:\Program Files\Common Files\GTK\2.0\bin;c:\bin
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

您大概可以猜到我对系统 PATH 做了一些修改;您的系统 PATH 可能没那么混乱。(或者不会;QuickTime 和 Java 不可能是唯一坚持要将自己添加到我的路径中的程序,因此您的系统 PATH 可能也有一些意外的添加。)

当我执行时,比如说,

C:\> findstr

.. Windows 在 PATH 变量中的每个条目中搜索名为“findstr”(不区分大小写)的文件。它在第一个条目中找不到该文件,因此它会检查所有可能的排列,方法是将 PATHEXT 中列出的扩展名附加到命令名称并检查该文件。首先,它检查“C:\WINDOWS\system32\findstr.com”,但没有这样的文件。接下来,它检查“C:\WINDOWS\system32\findstr.exe”并找到它,因此这就是它运行的程序。

希望我没有尝试运行“C:\WINDOWS\system32\findstr.bat”或“C:\bin\findstr.com”——如果我运行其中一个,这些文件就会运行:

C:\> findstr.bat
C:\> findstr.com

...但由于我只输入了“findstr”,所以我得到的是.EXE 版本。

这就是 Windows 在命令行上运行命令的方式。如果您想要获得可以在此处输入并运行的单词的完整列表,则需要检查自己的 PATH 变量以了解查找位置,并检查自己的 PATHEXT 变量以了解要查找的扩展名。

C:\> set | findstr PATH
PATH=C:\...
PATHEXT=...

(如果其他人想使用简洁的 DOS 命令行来自动执行此操作,请参与!)

答案2

答案3

在 Windows Vista 中,开始->运行->cmd 打开 cmd.exe。
在哪里可以找到可在那里执行的所有命令的列表?

打字

help

在命令提示符中,将为您提供 cmd 命令的概览,其中大部分命令是 dos 时代遗留下来的。但是,要获取可从 cmd 提示符启动的所有内容的列表(即 .exe、.com、.bat、.cmd 和各种可执行文件,如 .pyc 等),您必须执行

c:\> dir *.exe,*.com,*.bat,*... /s

(这也会给你带来一些以 .com 结尾的浏览器 cookie,因此请忽略它们)

答案4

其他命令在这里:http://ss64.com/nt/

相关内容