Skip to content

命令行基础

本章将介绍 Windows CMD 命令行基础,包括常用命令、批处理脚本、环境变量等内容。

命令提示符

打开命令提示符

cmd
:: 打开命令提示符的多种方法

:: 方法一:开始菜单搜索
:: 点击开始菜单,输入 cmd,按 Enter

:: 方法二:运行对话框
:: Win + R,输入 cmd,按 Enter

:: 方法三:右键开始菜单
:: 右键开始菜单 -> 命令提示符 或 Windows 终端

:: 方法四:文件资源管理器地址栏
:: 在地址栏输入 cmd,按 Enter

:: 以管理员身份运行
:: 搜索 cmd -> 右键 -> 以管理员身份运行

:: 或使用快捷键
:: Win + X -> 命令提示符(管理员)

命令提示符界面

bash
# 命令提示符显示格式:
# C:\Users\Username>

# 各部分含义:
# C: - 当前驱动器
# \Users\Username - 当前路径
# > - 命令提示符

# 查看当前目录
cd

# 查看当前时间和日期
time /t
date /t

# 清屏
cls

# 查看命令帮助
help
help dir
dir /?

常用命令

目录操作

cmd
:: cd - 切换目录

:: 切换到指定目录
cd C:\Windows

:: 切换到上级目录
cd ..

:: 切换到根目录
cd \

:: 切换到用户目录
cd %USERPROFILE%

:: 切换到上一个目录
cd -

:: dir - 列出目录内容

:: 列出当前目录
dir

:: 列出指定目录
dir C:\Windows

:: 显示隐藏文件
dir /a

:: 显示详细信息
dir /q

:: 按时间排序
dir /o:d    :: 按日期排序
dir /o:-d   :: 按日期倒序

:: 按名称排序
dir /o:n    :: 按名称排序
dir /o:-n   :: 按名称倒序

:: 只显示文件名
dir /b

:: 递归显示子目录
dir /s

:: 显示指定文件
dir *.txt

:: mkdir/md - 创建目录

:: 创建目录
mkdir C:\Test\NewFolder
md C:\Test\NewFolder

:: 创建多级目录
mkdir C:\Test\Level1\Level2\Level3

:: rmdir/rd - 删除目录

:: 删除空目录
rmdir C:\Test\EmptyFolder
rd C:\Test\EmptyFolder

:: 删除目录及其内容
rmdir /s C:\Test\Folder

:: 不提示直接删除
rmdir /s /q C:\Test\Folder

文件操作

cmd
:: copy - 复制文件

:: 复制文件
copy C:\source\file.txt C:\dest\

:: 复制并重命名
copy C:\source\file.txt C:\dest\newfile.txt

:: 复制多个文件
copy C:\source\*.txt C:\dest\

:: 确认覆盖
copy /-y C:\source\file.txt C:\dest\

:: xcopy - 复制目录

:: 复制目录
xcopy C:\source C:\dest\ /E /I

:: 常用选项:
:: /E - 复制目录和子目录,包括空目录
:: /I - 假定目标是目录
:: /H - 复制隐藏和系统文件
:: /C - 出错时继续
:: /Y - 不提示确认

:: move - 移动文件

:: 移动文件
move C:\source\file.txt C:\dest\

:: 移动并重命名
move C:\source\file.txt C:\dest\newfile.txt

:: 移动目录
move C:\source\folder C:\dest\

:: del - 删除文件

:: 删除文件
del C:\Test\file.txt

:: 删除多个文件
del C:\Test\*.txt

:: 删除只读文件
del /f C:\Test\file.txt

:: 确认删除
del /p C:\Test\file.txt

:: ren - 重命名

:: 重命名文件
ren C:\Test\oldname.txt newname.txt

:: 重命名目录
ren C:\Test\oldfolder newfolder

:: type - 显示文件内容

:: 显示文件内容
type C:\Test\file.txt

:: 显示多个文件
type C:\Test\file1.txt C:\Test\file2.txt

系统信息

cmd
:: systeminfo - 显示系统信息
systeminfo

:: hostname - 显示主机名
hostname

:: whoami - 显示当前用户
whoami

:: 显示用户信息
whoami /all

:: ver - 显示系统版本
ver

:: 查看环境变量
set

:: 查看特定环境变量
echo %PATH%
echo %USERNAME%
echo %COMPUTERNAME%
echo %USERPROFILE%
echo %TEMP%

网络命令

cmd
:: ipconfig - 查看 IP 配置

:: 查看 IP 配置
ipconfig

:: 查看详细信息
ipconfig /all

:: 释放 IP 地址
ipconfig /release

:: 重新获取 IP 地址
ipconfig /renew

:: 清除 DNS 缓存
ipconfig /flushdns

:: ping - 测试网络连接

:: 测试连接
ping 8.8.8.8

:: 指定次数
ping -n 4 8.8.8.8

:: 解析主机名
ping -a 192.168.1.1

:: netstat - 查看网络状态

:: 查看所有连接
netstat -a

:: 查看监听端口
netstat -an | findstr LISTENING

:: 查看端口占用
netstat -ano | findstr :80

:: tracert - 跟踪路由
tracert google.com

:: nslookup - DNS 查询
nslookup google.com
nslookup google.com 8.8.8.8

进程管理

cmd
:: tasklist - 查看进程

:: 查看所有进程
tasklist

:: 查找特定进程
tasklist | findstr notepad

:: 查看进程详细信息
tasklist /v

:: taskkill - 结束进程

:: 按 PID 结束进程
taskkill /PID 1234

:: 按名称结束进程
taskkill /IM notepad.exe

:: 强制结束
taskkill /F /IM notepad.exe

:: 结束进程树
taskkill /F /T /IM notepad.exe

批处理脚本

批处理文件基础

cmd
:: 批处理文件扩展名:.bat 或 .cmd

:: 创建批处理文件
:: 使用记事本或其他文本编辑器创建

:: 示例:hello.bat
@echo off
echo Hello, World!
echo 当前目录:%CD%
echo 当前用户:%USERNAME%
pause

:: 运行批处理文件
hello.bat

:: 或直接双击运行

批处理命令

cmd
:: @echo off - 关闭命令回显

:: echo - 输出文本
echo 这是输出内容

:: 注释
:: 这是单行注释
REM 这也是注释

:: pause - 暂停执行
pause
pause 请按任意键继续...

:: title - 设置窗口标题
title 我的批处理脚本

:: color - 设置颜色
color 0A    :: 黑底绿字

:: 颜色代码:
:: 0 - 黑色    8 - 灰色
:: 1 - 蓝色    9 - 淡蓝色
:: 2 - 绿色    A - 淡绿色
:: 3 - 浅绿    B - 淡浅绿
:: 4 - 红色    C - 淡红色
:: 5 - 紫色    D - 淡紫色
:: 6 - 黄色    E - 淡黄色
:: 7 - 白色    F - 亮白色

:: call - 调用另一个批处理
call other.bat

:: exit - 退出批处理
exit
exit /b 0    :: 退出并返回代码 0

变量和参数

cmd
:: @echo off

:: 设置变量
set name=张三
echo 姓名:%name%

:: 数字计算
set /a num=1+2+3
echo 结果:%num%

:: 用户输入
set /p input=请输入内容:
echo 你输入的是:%input%

:: 参数变量
:: %0 - 脚本名称
:: %1 - 第一个参数
:: %2 - 第二个参数
:: %* - 所有参数

echo 脚本名称:%0
echo 第一个参数:%1
echo 第二个参数:%2
echo 所有参数:%*

:: 延迟变量扩展
setlocal enabledelayedexpansion
set count=0
for %%i in (1 2 3) do (
    set /a count+=1
    echo 第 !count! 个数字:%%i
)

流程控制

cmd
:: @echo off

:: if 条件判断
set num=10

if %num% equ 10 (
    echo num 等于 10
) else (
    echo num 不等于 10
)

:: 比较运算符:
:: equ - 等于
:: neq - 不等于
:: lss - 小于
:: leq - 小于等于
:: gtr - 大于
:: geq - 大于等于

:: 文件存在判断
if exist C:\Test\file.txt (
    echo 文件存在
)

:: 目录存在判断
if exist C:\Test\nul (
    echo 目录存在
)

:: for 循环

:: 遍历列表
for %%i in (1 2 3 4 5) do (
    echo 数字:%%i
)

:: 遍历文件
for %%f in (C:\Test\*.txt) do (
    echo 文件:%%f
)

:: 遍历目录
for /d %%d in (C:\Test\*) do (
    echo 目录:%%d
)

:: 递归遍历
for /r C:\Test %%f in (*.txt) do (
    echo 文件:%%f
)

:: 数字循环
for /l %%i in (1,1,10) do (
    echo 数字:%%i
)

:: goto 跳转
:start
echo 这是开始
goto end
echo 这不会执行
:end
echo 这是结束

环境变量

查看环境变量

cmd
:: 查看所有环境变量
set

:: 查看特定环境变量
echo %PATH%
echo %USERNAME%
echo %COMPUTERNAME%
echo %USERPROFILE%
echo %APPDATA%
echo %TEMP%
echo %SYSTEMROOT%
echo %PROGRAMFILES%

:: 使用 setx 永久设置环境变量
setx MY_VAR "Hello World"

:: 设置系统环境变量(需要管理员权限)
setx MY_VAR "Hello World" /M

常用环境变量

变量说明
%USERPROFILE%用户主目录
%APPDATA%应用数据目录
%LOCALAPPDATA%本地应用数据目录
%TEMP%临时文件目录
%SYSTEMROOT%Windows 目录
%WINDIR%Windows 目录
%PROGRAMFILES%Program Files 目录
%PROGRAMFILES(X86)%Program Files (x86) 目录
%USERNAME%当前用户名
%COMPUTERNAME%计算机名
%PATH%可执行文件搜索路径
%DATE%当前日期
%TIME%当前时间

小结

本章介绍了 Windows CMD 命令行基础:

内容要点
常用命令cd、dir、copy、move、del 等
批处理脚本变量、流程控制、参数
环境变量查看、设置、常用变量

关键要点

  • CMD 是 Windows 的传统命令行工具
  • 批处理脚本可以自动化重复任务
  • 环境变量是系统配置的重要组成部分

下一步

下一章我们将学习 PowerShell,了解更强大的命令行工具。