命令行工具入门

Windows 命令行入门:认识 CMD 和 PowerShell

很多人每天都在使用 Windows,但几乎只会点击鼠标,很少接触命令行。实际上,很多软件安装教程、开发工具、AI 编程工具都会要求你”打开终端”或者”执行一条命令”。这时候,了解 Windows 的命令行工具就很有必要了。

本文只介绍最基础的概念,帮助零基础用户建立一个整体认识。

什么是命令行?

命令行(Command Line)就是一种通过输入文字命令来操作电脑的方式。

例如:

dir

表示查看当前目录下有哪些文件。

再例如:

cd D:\Project

表示切换到 D:\Project 目录。

虽然没有图形界面直观,但命令行速度快、自动化能力强,也是程序员和运维工程师每天都会使用的重要工具。

Windows 有哪些命令行工具?

Windows 目前主要有两个命令行环境:

  • CMD(命令提示符)
  • PowerShell

很多新手第一次接触都会疑惑:为什么 Windows 有两个?

其实它们诞生于不同年代。

CMD:历史悠久的命令提示符

CMD(Command Prompt)可以说是 Windows 最经典的命令行工具。

它最早可以追溯到 DOS 时代,因此很多老教程看到的都是 CMD。

打开方式很简单:

  • Win + R
  • 输入 cmd
  • 回车

或者开始菜单搜索:

cmd

就可以打开。

它支持大量经典命令,例如:

dir
cd
copy
move
del
ping
ipconfig

对于普通用户来说,查看网络信息、删除文件、执行安装程序等任务已经足够。

不过,CMD 的设计年代比较早,脚本能力有限,处理复杂任务时就显得有些力不从心。

PowerShell:现代化命令行

为了替代 CMD,微软后来推出了 PowerShell。

PowerShell 不仅能够执行 CMD 的绝大多数命令,还增加了非常强大的脚本能力,可以管理系统、操作文件、调用网络接口,甚至管理云服务器。

打开方式同样很简单:

开始菜单搜索:

PowerShell

或者在新版 Windows 中搜索:

Windows PowerShell

Windows 11 中还可以直接搜索:

Terminal

默认打开的通常就是 PowerShell。

PowerShell 常见命令例如:

Terminal window
Get-ChildItem
Get-Process
Get-Service
Get-NetIPAddress

如果觉得这些命令太长,也不用担心。

PowerShell 保留了很多 CMD 的兼容命令,例如:

Terminal window
dir
cd
mkdir
copy
del

这些都可以直接使用,因此很多人几乎感觉不到区别。

PowerShell 为什么这么受欢迎?

PowerShell 最大的特点,就是”一切皆对象(Everything is an Object)”。

CMD 输出的是普通文本。

例如:

dir

得到的是一大段文字。

而 PowerShell 输出的是对象。

例如:

Terminal window
Get-Process

返回的是”进程对象”,里面包含:

  • 进程名称
  • PID
  • CPU 占用
  • 内存使用
  • 启动时间

因此可以继续进行筛选、排序、统计:

Terminal window
Get-Process | Sort-Object CPU

这也是为什么 PowerShell 特别适合自动化运维。

Windows Terminal 又是什么?

很多人看到 Windows Terminal,以为它是第三种命令行。

其实不是。

Windows Terminal 只是一个终端程序(Terminal)。

它相当于一个”窗口”,里面可以运行:

  • CMD
  • PowerShell
  • WSL(Linux)
  • Azure Cloud Shell
  • SSH

所以:

CMD 和 PowerShell 是”命令行解释器”,Windows Terminal 是运行它们的窗口。

就像浏览器可以打开很多网页一样,Windows Terminal 可以打开很多不同的命令行环境。

新手应该学哪个?

如果你现在刚开始学习 Windows 命令行,我建议直接学习 PowerShell。

原因很简单:

  • 微软官方重点维护
  • 功能远比 CMD 强大
  • 与现代开发工具兼容更好
  • 支持脚本自动化
  • Windows 11 默认体验更完善

当然,也不必刻意回避 CMD。 因为网上仍然有大量教程使用 CMD,而且两者很多基础命令都是互通的。

总结

对于普通用户来说,可以简单记住下面几点:

  • CMD:Windows 传统命令行,历史悠久,兼容性好。
  • PowerShell:现代命令行,功能更强,是微软推荐的发展方向。
  • Windows Terminal:只是一个终端窗口,可以同时运行 CMD、PowerShell、WSL 等多种命令行环境。

对于绝大多数人而言,只需要学会 PowerShell,再了解一点 CMD 的基础命令,就已经足够应付日常使用,以及后续学习 Git、Python、Docker、AI 编程工具等各种现代开发环境。