菜鸟科技网

DOS如何查看历史命令?

在 Windows 命令提示符 中查看历史命令

这是最传统、最常见的方法,CMD 的历史记录功能相对简单,主要通过 DOSKEY 实用程序来管理。

DOS如何查看历史命令?-图1
(图片来源网络,侵删)

使用方向键 (↑ 和 ↓)

这是最直接、最常用的方法。

  • 按 (上箭头键):会逐条显示你之前输入过的命令。
  • 按 (下箭头键):会反向浏览历史命令。

当你找到想要的命令后,可以按 Enter 直接执行,或者按 Home/End 键进行修改后再执行。

使用 F7 键 (交互式历史命令选择窗口)

这是一个非常直观的图形化方法。

  • F7:会弹出一个窗口,列出所有你之前使用过的命令(从旧到新)。
  • 使用 和 方向键在列表中选择你想要的命令。
  • Enter 键执行选中的命令。
  • Esc 键关闭窗口而不做任何操作。

使用 F8 键 (搜索历史命令)

这个功能可以帮助你快速找到包含特定字符的命令。

DOS如何查看历史命令?-图2
(图片来源网络,侵删)
  • 先输入一个或多个字符dir
  • 然后按 F8:命令提示符会自动向上查找最近一次输入过以 dir 开头的命令。
  • 连续按 F8:会继续向上查找匹配的命令。
  • F3:会自动补全并显示当前找到的匹配命令,按 Enter 即可执行。

使用 DOSKEY 命令查看列表

DOSKEY 是一个 TSR (Terminate and Stay Resident) 程序,用于增强命令行编辑功能,并维护命令历史记录。

  • 查看所有历史命令

    doskey /history

    或者简写为:

    doskey /h

    这会直接在当前窗口打印出所有历史命令列表。

    DOS如何查看历史命令?-图3
    (图片来源网络,侵删)
  • 将历史命令保存到文件: 如果你想保存这些命令,可以使用重定向操作符 >

    doskey /history > C:\path\to\your\command_history.txt

在 Windows PowerShell 中查看历史命令

PowerShell 提供了比 CMD 更强大、更灵活的历史记录管理功能。

使用方向键 (↑ 和 ↓)

CMD 的功能在 PowerShell 中同样适用。

  • 按 和 :浏览命令历史。

使用 Get-History cmdlet (推荐)

这是 PowerShell 查看历史记录的标准方式。

  • 显示所有历史命令

    Get-History

    它会显示一个格式化的列表,包含 IdCommandLine

  • 显示特定数量的最近命令: 只显示最近 5 条命令:

    Get-History -Count 5

使用 Invoke-History cmdlet (执行历史命令)

这个命令可以让你通过 Id 来精确地执行历史命令,非常方便。

  • 首先查看历史命令的 Id
    Get-History

    假设输出如下:

    Id CommandLine
    -- -----------
     1 Set-Location C:\Windows
     2 Get-ChildItem
     3 Get-Process
  • 执行特定 Id 的命令: 要重新执行 Id3 的命令 (Get-Process):
    Invoke-History 3

    或者使用别名 r

    r 3

使用 History 别名

PowerShell 为 Get-History 提供了一个简短的别名 history,使用起来更快捷。

history

使用 Tab 键自动补全

PowerShell 还有一个非常酷的功能,可以根据历史命令进行自动补全。

  • 输入一个或多个字符。
  • 然后反复按 Tab,PowerShell 会循环显示所有以你输入字符开头的历史命令。

在 Windows Terminal 中查看历史命令

Windows Terminal 是一个现代化的终端应用程序,它支持多个标签页(可以同时运行 CMD、PowerShell 等),并且默认开启了命令记录功能。

查看当前会话的历史记录

这与你在 CMD 或 PowerShell 中的方法完全一样,你可以使用方向键、F7 (在 CMD 中)、Get-History (在 PowerShell 中) 等方式。

使用 Windows Terminal 的内置历史记录 (跨会话)

这是 Windows Terminal 的一个强大功能,它会记录你在所有标签页中输入的命令,并且即使关闭了终端再重新打开,这些记录依然存在(只要配置正确)。

  • 打开设置

    • 点击终端窗口右上角的 ^ (向下箭头) 图标,然后选择 “设置”
    • 或者使用快捷键 Ctrl + ,
  • 启用命令记录

    • 在左侧选择 “配置文件” (Profiles)
    • 选择你想要配置的终端(如 "Windows PowerShell" 或 "命令提示符")。
    • 向下滚动,找到 “高级” (Advanced) 设置。
    • 确保 “命令记录” (Command Logging) 选项是 开启 的。
    • 你还可以设置记录的 “最大命令数” (Maximum number of commands to remember)
  • 如何查看和搜索历史记录

    • 使用快捷键 Ctrl + R:这是最强大的功能,按下 Ctrl + R 后,终端会进入反向搜索模式,你只需输入你想查找的命令的一部分,终端就会实时显示匹配到的最新历史命令,再次按 Enter 即可执行。

总结与对比

功能/环境 Windows CMD Windows PowerShell Windows Terminal
浏览 / 方向键 / 方向键 / 方向键
图形化列表 F7 无 (但有更强大的文本列表) 无 (但有更强大的全局搜索)
文本列表 doskey /history Get-History / history Get-History (在 PS 标签页)
按ID执行 不支持 Invoke-History <Id> Invoke-History <Id> (在 PS 标签页)
按前缀搜索 F8 Tab 键自动补全 Ctrl + R (全局搜索)
持久化记录 仅限当前会话 仅限当前会话 (需在设置中开启)

给你的建议:

  • 如果你只是偶尔需要找一条之前用过的命令,使用方向键 ( / ) 是最快的方式。
  • 如果你在 PowerShell 环境下工作,强烈建议你熟悉 Get-HistoryInvoke-History,这会让你的工作效率大大提升。
  • 如果你使用的是 Windows Terminal,一定要学会使用 Ctrl + R,它是在所有历史记录中快速定位命令的利器。
分享:
扫描分享到社交APP
上一篇
下一篇