当我在命令窗口中按下 TAB 键时,系统会插入制表符(空格),而不是遍历当前目录中的项目。我怎样才能让它以另一种方式工作(自动完成)?
答案1
看起来注册表中的完成功能可能被禁用了。
下面是根据输出得出的解释cmd /?
:
默认情况下不启用文件名和目录名称完成。您可以使用 /F:ON 或 /F:OFF 开关为 CMD.EXE 的特定调用启用或禁用文件名完成。
您可以使用 REGEDT32.EXE 在注册表中设置以下任一或两个 REG_DWORD 值,为计算机和/或用户登录会话上的所有 CMD.EXE 调用启用或禁用完成(实际上,只需 regedit.exe 就可以了):
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar
and/or
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
用十六进制值表示用于特定功能的控制字符(例如 0x4 表示 Ctrl-D,0x6 表示 Ctrl-F,0x9 表示 Tab)。用户特定设置优先于机器设置。命令行开关优先于注册表设置。
如果使用 /F:ON 开关启用了完成功能,则使用的两个控制字符是 Ctrl-D(用于目录名称完成)和 Ctrl-F(用于文件名完成)。
要禁用注册表中的特定完成字符,请使用空格值 (0x20),因为它不是有效的控制字符。
答案2
要将 TAB 设为自动完成的默认设置,请按照以下步骤操作
- 打开 REGEDIT
- 查找 HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
- 将值更改为 9
- 重新启动cmd
- 就是这样。
答案3
对我来说我必须:
- 右键单击标题栏
- 选择特性
- 查看快速编辑模式在下面编辑选项
答案4
在我的系统上,向命令提示符链接添加 /F 选项会禁用制表符补全,无论给出什么值。如果我根本不给出 /F,我可以使用制表符补全;但 /F:ON 和 /F:OFF 都会禁用它。