Windows——系统配置与管理

系统配置与管理

1、tasklist(系统进程)

tasklist命令用于显示本地或远程计算机上当前运行的进程列表。它提供了详细的进程信息,是系统监控、故障排除和性能分析的基础工具。

基本语法:

shell 复制代码
tasklist [/s <计算机> [/u [<域>\]<用户名> [/p <密码>]]] [/fo {TABLE | LIST | CSV}] [/nh] [/fi <过滤器>] [/m [<模块>] | /svc | /v]

命令位置:

tasklist.exe文件位于 C:\Windows\System32目录下

显示的信息包括:

  • 映像名称:进程的可执行文件名
  • PID:进程标识符(唯一编号)
  • 会话名:进程所属的会话
  • 会话号:会话编号
  • 内存使用:进程占用的内存大小
  • 状态:进程运行状态(运行中、已挂起等)
  • 用户名:运行进程的用户账户
  • CPU时间:进程占用CPU的总时间
  • 窗口标题:进程关联的窗口标题(如适用)

核心参数详解:

基本显示参数:

参数 功能描述 示例
/fo <格式>​ 指定输出格式:TABLE(表格)、LIST(列表)、CSV(CSV格式) /fo TABLE
/nh​ 不显示列标题(与TABLE和CSV格式一起使用) /fo TABLE /nh
/v​ 显示详细任务信息(包括窗口标题、CPU时间等) tasklist /v

远程计算机参数:

参数 功能描述 示例
/s <计算机>​ 指定远程计算机名称或IP地址 /s 192.168.1.100
/u <用户名>​ 指定用于远程连接的用户名 /u administrator
/p <密码>​ 指定用户密码(或在提示时输入) /p password

高级信息参数:

参数 功能描述 示例
/m [模块名]​ 显示进程加载的DLL模块(可指定特定模块) /m或 /m kernel32.dll
/svc​ 显示每个进程包含的服务信息 tasklist /svc
/fi "<过滤器>"​ 使用过滤器显示特定进程 详见下文

过滤器(Filter)详解:

/fi参数是 tasklist最强大的功能之一,支持多种过滤条件:

常用过滤器运算符:

  • eq:等于
  • ne:不等于
  • gt:大于
  • lt:小于
  • ge:大于等于
  • le:小于等于

可用的过滤条件:

条件 描述 示例
IMAGENAME​ 进程映像名称 IMAGENAME eq notepad.exe
PID​ 进程ID PID gt 1000
MEMUSAGE​ 内存使用量(KB) MEMUSAGE gt 100000
STATUS​ 进程状态 STATUS eq RUNNING
USERNAME​ 用户名 USERNAME eq NT AUTHORITY\SYSTEM
SESSION​ 会话编号 SESSION eq 1
SERVICES​ 服务名称 SERVICES eq eventlog
WINDOWTITLE​ 窗口标题 WINDOWTITLE eq 记事本

过滤器组合,使用 and, or组合多个条件:

shell 复制代码
tasklist /fi "IMAGENAME eq chrome.exe" /fi "MEMUSAGE gt 50000"

使用场景与实例:

  1. 基本进程查看
shell 复制代码
# 查看本地计算机所有运行中的进程
tasklist

# 典型输出
映像名称                       PID 会话名              会话#       内存使用
========================= ======== ================ =========== ============
System Idle Process              0 Services                   0          8 K
System                           4 Services                   0      4,428 K
svchost.exe                   1232 Services                   0     12,344 K
notepad.exe                   4568 Console                    1      8,232 K
chrome.exe                    5678 Console                    1    156,432 K
  1. 查找特定进程
shell 复制代码
# 查找所有Chrome浏览器进程
tasklist /fi "IMAGENAME eq chrome.exe"
  1. 查看内存占用大的进程
shell 复制代码
# 显示内存使用超过100MB的进程
tasklist /fi "MEMUSAGE gt 102400"
  1. 查看系统服务关联的进程
shell 复制代码
# 显示进程及其关联的系统服务
tasklist /svc
  1. 查看进程加载的DLL模块
shell 复制代码
# 查看notepad.exe进程加载的所有DLL模块
tasklist /m /fi "IMAGENAME eq notepad.exe"
  1. 远程计算机进程查看
shell 复制代码
# 查看远程服务器192.168.1.100的进程列表
tasklist /s 192.168.1.100 /u administrator /p password
  1. CSV格式输出(用于脚本处理)
shell 复制代码
# 以CSV格式输出,便于其他程序处理
tasklist /fo CSV
  1. 查找无响应的进程
shell 复制代码
# 查找状态不是"RUNNING"的进程
tasklist /fi "STATUS ne RUNNING"

高级用法与实用技巧:

  1. 与taskkill命令配合使用
shell 复制代码
#查找并结束特定进程:
# 查找并结束所有notepad进程
tasklist /fi "IMAGENAME eq notepad.exe" && taskkill /im notepad.exe /f
  1. 监控特定进程的资源使用
shell 复制代码
# 创建批处理脚本监控进程内存使用
@echo off
:monitor
tasklist /fi "IMAGENAME eq myapp.exe" /fo table
timeout /t 5 > nul
goto monitor
  1. 进程统计和分析
shell 复制代码
# 统计各类进程数量
# 统计chrome进程数量
tasklist /fi "IMAGENAME eq chrome.exe" | find /c "chrome.exe"
  1. 导出进程列表到文件
shell 复制代码
# 将进程列表导出供后续分析:
tasklist /v > process_list.txt
  1. 查找可疑进程
shell 复制代码
#查找异常进程名的进程:
tasklist /fi "IMAGENAME eq *.tmp" /fi "IMAGENAME eq temp*.exe"

实际应用示例:

  1. 系统维护脚本
shell 复制代码
# 自动检查并结束占用过多内存的进程
@echo off
echo 检查内存占用过高的进程...
for /f "skip=3 tokens=2,5" %%i in ('tasklist /fo table /fi "MEMUSAGE gt 500000"') do (
    echo 结束进程: %%i (内存: %%j K)
    taskkill /pid %%i /f
)
  1. 进程监控仪表盘
shell 复制代码
# 实时监控关键进程状态
@echo off
:start
cls
echo ===== 进程监控 =====
echo [系统关键进程]
tasklist /fi "IMAGENAME eq svchost.exe" /fi "USERNAME eq SYSTEM"
echo.
echo [用户进程]
tasklist /fi "SESSION eq 1" /fi "USERNAME ne SYSTEM"
timeout /t 10 > nul
goto start

2、taskkill(终止进程)

taskkill命令用于结束一个或多个任务或进程。它可以根据进程ID(PID)或映像名称来终止运行中的程序,是系统维护和故障排除的重要工具。

基本语法:

shell 复制代码
taskkill [/s <计算机> [/u [<域>\]<用户名> [/p <密码>]]] [/fi <过滤器>] [/pid <进程ID> | /im <映像名称>] [/f] [/t]

命令位置:

taskkill.exe文件位于 C:\Windows\System32目录下。

核心参数:

参数 功能描述 示例
/im <映像名>​ 按映像名称终止进程(支持通配符*) /im notepad.exe
/pid <进程ID>​ 按进程ID终止特定进程​ /pid 1234
/f​ 强制终止进程(强制结束) /im chrome.exe /f
/t​ 树终止:结束指定进程及其子进程 /pid 5678 /t
/s <计算机>​ 指定远程计算机名称或IP地址 /s 192.168.1.100
/u <用户名>​ 指定用于远程连接的用户名 /u administrator
/p <密码>​ 指定用户密码 /p password

使用场景与实例:

  1. 结束特定程序
shell 复制代码
#结束所有记事本进程
taskkill /im notepad.exe
  1. 强制结束无响应程序
shell 复制代码
#强制结束所有Chrome浏览器进程
taskkill /im chrome.exe /f
  1. 结束特定PID的进程
shell 复制代码
#结束进程ID为1234的进程
taskkill /pid 1234
  1. 结束进程树
shell 复制代码
# 结束进程及其启动的所有子进程
taskkill /im java.exe /t
  1. 使用过滤器结束进程
shell 复制代码
#结束所有无响应的进程
taskkill /fi "STATUS eq NOT RESPONDING" /f
  1. 结束远程计算机进程
shell 复制代码
# 结束远程服务器上的特定进程
taskkill /s 192.168.1.100 /u administrator /p Pass123 /im malware.exe /f
  1. 结束占用过多内存的进程
shell 复制代码
#结束内存使用超过500MB的进程
taskkill /fi "MEMUSAGE gt 500000" /f
  1. 结束特定用户会话的进程
shell 复制代码
#结束用户Alice的所有进程
taskkill /fi "USERNAME eq Alice" /f

3、msconfig(系统配置)

msconfig是 Microsoft System Configuration Utility​ 的缩写,用于启动系统配置实用程序。这是一个图形化工具,帮助用户管理启动项、服务、引导选项等系统配置。

基本语法:

shell 复制代码
msconfig
# msconfig.exe文件位于 C:\Windows\System32目录下。虽然通过CMD运行,但它启动的是图形界面工具。

主要功能选项卡:

  • 常规:选择启动模式(正常/诊断/有选择启动)
  • 引导:管理多操作系统启动选项和高级引导设置
  • 服务:启用或禁用系统服务
  • 启动
    • 在Win10之前版本:管理开机启动程序
    • 在Win10/11中:已重定向到任务管理器
  • 工具:快速启动各种系统管理工具

4、systeminfo(系统配置信息)

systeminfo命令用于显示本地或远程计算机的详细硬件和软件配置信息。它提供了一个快速、全面的系统概览,是系统管理和故障排除的重要工具。

基本语法:

shell 复制代码
systeminfo [/s <计算机> [/u <域>\<用户> [/p <密码>]]] [/fo {TABLE | LIST | CSV}] [/nh]
参数 功能描述 示例
/s <计算机>​ 指定远程计算机名称或IP地址 /s 192.168.1.100
/u <域>\<用户>​ 指定用于远程连接的用户名 /u DOMAIN\AdminUser
/p <密码>​ 指定用户密码 /p password
/fo <格式>​ 指定输出格式:TABLE、LIST、CSV /fo CSV
/nh​ 不显示列标题(与TABLE格式一起使用) /fo TABLE /nh

使用场景与实例:

  1. 查看本地计算机完整信息
shell 复制代码
#获取本地计算机的详细系统信息
systeminfo
  1. 查看远程服务器信息
shell 复制代码
# 查看远程服务器192.168.1.100的系统信息
systeminfo /s 192.168.1.100 /u administrator /p Pass123
  1. CSV格式输出(用于脚本处理)
shell 复制代码
# 以CSV格式输出,便于导入Excel或其他工具分析
systeminfo /fo CSV
  1. 表格格式输出
shell 复制代码
# 以表格格式显示,更易阅读
systeminfo /fo TABLE
  1. 不显示标题的简洁输出
shell 复制代码
# 适合在脚本中处理数据。
systeminfo /fo TABLE /nh
  1. 输出信息详解
shell 复制代码
# 运行 systeminfo后的典型输出示例及解读:
主机名:           DESKTOP-ABC123
OS 名称:          Microsoft Windows 10 专业版
OS 版本:          10.0.19044 暂缺 Build 19044
OS 制造商:        Microsoft Corporation
OS 配置:          独立工作站
OS 构建类型:      Multiprocessor Free
注册的所有人:     John Doe
注册的组织:       Company Inc.
产品 ID:          00330-80000-00000-AA123
初始安装日期:     2023/5/15, 15:30:25
系统启动时间:     2024/1/20, 8:15:10
系统制造商:       Dell Inc.
系统型号:         OptiPlex 7070
系统类型:         x64-based PC
处理器:           安装了 1 个处理器。
                  [01]: Intel64 Family 6 Model 158 Stepping 10 GenuineIntel ~3000 Mhz
BIOS 版本:        Dell Inc. 1.15.0, 2022/10/1
Windows 目录:     C:\Windows
系统目录:         C:\Windows\system32
启动设备:         \Device\HarddiskVolume1
系统区域设置:     zh-cn;中文(中国)
输入法区域设置:   zh-cn;中文(中国)
时区:             (UTC+08:00) 北京,重庆,香港特别行政区,乌鲁木齐
物理内存总量:     16,223 MB
可用的物理内存:   8,145 MB
虚拟内存: 最大值: 18,655 MB
虚拟内存: 可用:   10,234 MB
虚拟内存: 使用中: 8,421 MB
页面文件位置:     C:\pagefile.sys
域:               company.local
登录服务器:       \\DC01
修补程序:         安装了 135 个修补程序。
网卡:             已安装 2 个 NIC。
                  [01]: Intel(R) Ethernet Connection (7) I219-LM
                    连接名:      以太网
                    DHCP 已启用: 是
                    IP 地址:     [192.168.1.50, fe80::1234:5678:90ab:cdef]
                  [02]: Intel(R) Wi-Fi 6 AX201 160MHz
                    连接名:      WLAN
                    状态:       媒体连接已中断

高级用法与实用技巧:

  1. 信息过滤和搜索
shell 复制代码
# 使用 findstr命令过滤特定信息:
# 查看处理器信息
systeminfo | findstr /i "处理器"

# 查看内存信息
systeminfo | findstr /i "内存"

# 查看操作系统版本
systeminfo | findstr /i "OS 版本"

# 查看安装日期
systeminfo | findstr /i "安装日期"

# 查看网卡信息
systeminfo | findstr /i "网卡"
  1. 创建系统信息报告
shell 复制代码
# 将系统信息保存到文件:
systeminfo > C:\Reports\system_report.txt
  1. 批量检查多台计算机
shell 复制代码
#创建批处理脚本检查多台服务器:
@echo off
set servers=192.168.1.100 192.168.1.101 192.168.1.102

for %%s in (%servers%) do (
    echo 检查服务器: %%s
    echo ===================== >> system_reports.txt
    echo 服务器: %%s >> system_reports.txt
    echo ===================== >> system_reports.txt
    systeminfo /s %%s /u administrator /p Pass123 >> system_reports.txt 2>nul
    if errorlevel 1 echo 无法连接服务器: %%s >> system_reports.txt
    echo. >> system_reports.txt
)
  1. 系统健康检查脚本
shell 复制代码
#创建自动化系统健康检查:
@echo off
echo 系统健康检查报告
echo 生成时间: %date% %time%
echo ==================================

systeminfo | findstr /i "OS 版本" >nul && (
    echo ✓ 操作系统信息可获取
) || (
    echo ✗ 无法获取OS信息
)

systeminfo | findstr /i "可用的物理内存" >nul && (
    for /f "tokens=3" %%m in ('systeminfo ^| findstr /i "可用的物理内存"') do (
        if %%m LSS 2048 (
            echo ⚠ 可用内存较低: %%m MB
        ) else (
            echo ✓ 内存充足: %%m MB
        )
    )
)

echo ==================================
  1. 补丁管理检查
shell 复制代码
# 检查系统补丁安装情况:
# 统计已安装的补丁数量
systeminfo | findstr /i "修补程序"

实际应用示例:

  1. 快速系统诊断
shell 复制代码
@echo off
echo 快速系统诊断报告
echo =================

systeminfo | findstr /i "OS 版本:"
systeminfo | findstr /i "处理器:"
systeminfo | findstr /i "物理内存总量:"
systeminfo | findstr /i "可用的物理内存:"
systeminfo | findstr /i "启动时间:"

echo =================
  1. 硬件清单收集
shell 复制代码
@echo off
echo 硬件信息收集
echo 生成时间: %date% %time%

echo [操作系统信息]
systeminfo | findstr /i "OS 名称:"
systeminfo | findstr /i "OS 版本:"

echo [硬件信息]
systeminfo | findstr /i "系统制造商:"
systeminfo | findstr /i "系统型号:"
systeminfo | findstr /i "处理器:"
systeminfo | findstr /i "物理内存总量:"

echo [网络信息]
systeminfo | findstr /i "域:"
systeminfo | findstr /i "网卡:"
  1. 系统运行时间监控
shell 复制代码
@echo off
for /f "tokens=1,2,3,4" %%a in ('systeminfo ^| findstr /i "系统启动时间:"') do (
    echo 系统最后启动时间: %%b %%c %%d
)

5、devmgmt.msc(设备管理器)

devmgmt.msc是 Device Management Microsoft Saved Console​ 的缩写,用于启动设备管理器。这是一个图形化管理工具,用于查看和管理计算机中的所有硬件设备。

基本语法:

shell 复制代码
devmgmt.msc

命令位置:

shell 复制代码
devmgmt.msc文件位于 C:\Windows\System32目录下。这是一个Microsoft管理控制台文件。

6、mountvol(卷的挂载点)

mountvol是 Mount Volume​ 的缩写,用于创建、删除或列出卷的挂载点。它允许将驱动器卷挂载到空的NTFS文件夹,而不是分配驱动器号。

基本语法:

shell 复制代码
mountvol [驱动器:]路径 卷名
mountvol [驱动器:]路径 /D
mountvol [驱动器:]路径 /L
mountvol [驱动器:]路径 /P
mountvol /R
mountvol /N
mountvol /E
mountvol 驱动器: /S

核心参数详解:

基本操作参数:

参数 功能描述 示例
[驱动器:]路径​ 指定挂载点路径 C:\Mount\Data
卷名​ 指定卷的GUID \?\Volume{123...}
/L​ 列出指定路径的卷信息 mountvol C:\Mount /L
/D​ 删除指定路径的挂载点 mountvol C:\Mount /D
/P​ 卸载卷并使其脱机 mountvol E: /P

高级管理参数:

参数 功能描述 示例
/R​ 从注册表删除已卸载卷的挂载点 mountvol /R
/N​ 为卷分配新的卷GUID mountvol /N
/E​ 启用卷的自动挂载 mountvol /E
驱动器: /S​ 为指定驱动器启用卷影复制 mountvol C: /S

使用场景与实例:

  1. 查看所有卷信息
shell 复制代码
# 列出系统中所有卷的GUID和挂载点
mountvol

# 典型输出
C:\>mountvol

Possible values for VolumeName along with current mount points are:

\\?\Volume{12345678-1234-1234-1234-123456789012}\
    C:\

\\?\Volume{23456789-2345-2345-2345-234567890123}\
    D:\

\\?\Volume{34567890-3456-3456-3456-345678901234}\
    *** 没有挂载点 ***
  1. 创建挂载点
shell 复制代码
# 将未分配的卷挂载到NTFS文件夹
# 1. 首先查看可用的卷
mountvol

# 2. 创建挂载点文件夹
mkdir C:\DataDrive

# 3. 将卷挂载到文件夹
mountvol C:\DataDrive \\?\Volume{34567890-3456-3456-3456-345678901234}\
  1. 删除挂载点
shell 复制代码
# 删除指定路径的挂载点
mountvol C:\DataDrive /D
  1. 查看特定路径的卷信息
shell 复制代码
# 查看指定挂载点对应的卷信息
mountvol C:\DataDrive /L
  1. 卸载卷
shell 复制代码
# 使卷脱机(可用于安全移除外部存储)
mountvol E: /P

实际应用示例:

  1. 扩展系统存储
shell 复制代码
#将新硬盘挂载到系统文件夹,扩展C盘存储:
@echo off
echo 扩展系统存储配置
echo =================

# 创建挂载点文件夹
mkdir C:\ExtendedStorage

# 假设新卷GUID已知,进行挂载
mountvol C:\ExtendedStorage \\?\Volume{34567890-3456-3456-3456-345678901234}\

echo 新存储已挂载到 C:\ExtendedStorage
echo 可用空间已扩展
  1. 备份数据挂载点
shell 复制代码
# 为备份数据创建专用挂载点:
@echo off
echo 配置备份数据挂载点
echo ===================

# 创建备份目录结构
mkdir C:\Backups
mkdir C:\Backups\Database
mkdir C:\Backups\Archives

# 挂载不同的卷到不同目录(假设卷GUID已知)
mountvol C:\Backups\Database \\?\Volume{11111111-1111-1111-1111-111111111111}\
mountvol C:\Backups\Archives \\?\Volume{22222222-2222-2222-2222-222222222222}\

echo 备份挂载点配置完成
  1. 自动化存储管理脚本
shell 复制代码
@echo off
setlocal enabledelayedexpansion

echo 存储挂载点管理脚本
echo ===================

# 检查所有卷的挂载状态
echo [当前挂载点状态]
mountvol | findstr "\\\\"

# 提示用户操作
echo.
echo 可选操作:
echo 1. 创建新挂载点
echo 2. 删除挂载点
echo 3. 查看卷信息
set /p choice=请选择操作 (1-3):

if "!choice!"=="1" goto create_mount
if "!choice!"=="2" goto delete_mount
if "!choice!"=="3" goto list_volume

:create_mount
set /p mountpath=输入挂载点路径 (如 C:\MyMount):
set /p volumeid=输入卷GUID:
mountvol "!mountpath!" "!volumeid!"
goto end

:delete_mount
set /p mountpath=输入要删除的挂载点路径:
mountvol "!mountpath!" /D
goto end

:list_volume
mountvol
goto end

:end
echo 操作完成
pause

7、color(命令提示符颜色)

color命令用于更改命令提示符窗口的前景色和背景色。它可以立即改变CMD窗口的显示颜色,让命令行界面更加个性化。

基本语法:

shell 复制代码
color [背景色代码][前景色代码]

颜色代码表:

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

使用场景与实例:

  1. 恢复默认颜色
shell 复制代码
#恢复命令提示符的默认颜色(白字黑底)。
color
  1. 设置经典黑底绿字
shell 复制代码
# 模拟老式终端的效果。
color 0A
  1. 设置白底蓝字
shell 复制代码
# 类似传统文档的效果
color F1
相关推荐
凯子坚持 c32 分钟前
CANN 性能剖析实战:从原始事件到交互式火焰图
windows·microsoft
开开心心就好1 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
獨枭1 小时前
PyCharm 跑通 SAM 全流程实战
windows
仙剑魔尊重楼2 小时前
音乐制作电子软件FL Studio2025.2.4.5242中文版新功能介绍
windows·音频·录屏·音乐·fl studio
PHP小志2 小时前
Windows 服务器怎么修改密码和用户名?账户被系统锁定如何解锁
windows
专注VB编程开发20年4 小时前
vb.net datatable新增数据时改用数组缓存
java·linux·windows
仙剑魔尊重楼4 小时前
专业音乐制作软件fl Studio 2025.2.4.5242中文版新功能
windows·音乐·fl studio
rjc_lihui5 小时前
Windows 运程共享linux系统的方法
windows
失忆爆表症5 小时前
01_项目搭建指南:从零开始的 Windows 开发环境配置
windows·postgresql·fastapi·milvus
阿昭L6 小时前
C++异常处理机制反汇编(三):32位下的异常结构分析
c++·windows·逆向工程