首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >《Windows 系统常用指令深度解析与实战指南》

《Windows 系统常用指令深度解析与实战指南》

作者头像
XPcode7
发布2025-10-23 15:00:28
发布2025-10-23 15:00:28
2400
代码可运行
举报
运行总次数:0
代码可运行

《Windows 系统常用指令深度解析与实战指南》

在 Windows 系统的日常使用、开发运维工作中,熟练掌握常用指令是提升效率、解决各类问题的关键。本书聚焦于 Windows 系统下从基础检测到复杂系统服务管理等一系列常用指令。从 telnet 检测端口开放、tracert 追踪路由跳转,到通过 msconfig、services.msc 等指令进行系统服务管理,再到 net user 管理用户账户等,每一条指令都进行了详细阐述。不仅介绍指令的基本语法,更结合丰富的实战案例,深入解析其在不同场景下的应用,无论是排查网络故障、管理系统进程,还是进行用户权限设置,都能在本文找到对应的解决方案,帮助您全面提升对 Windows 系统的操作与管理能力。

1-1 常用指令

1-1-1 telnet
代码语言:javascript
代码运行次数:0
运行
复制
## 检测端口开放
telnet 101.132.222.28 3306    ## 查看某个端口是否开放
1-1-2 tracert
代码语言:javascript
代码运行次数:0
运行
复制
## 路由跳转记录
tracert 101.132.222.28   ## 路由跳转记录
1-1-3 系统服务
代码语言:javascript
代码运行次数:0
运行
复制
msconfig、services.msc、sc 、tasklist /svc 
## 注:/svc是详细查看一个宿主进程对应的多项服务 。
## SC是Service Control Manager的缩写,是Windows操作系统中的一个命令行工具,用于管理服务。它可以启动、停止、暂停、恢复和删除服务,还可以查询服务的详细信息。SC命令的参数包括:

- server:## 指定服务所在的远程服务器的名称。该名称必须使用通用命名约定 (UNC) 格式(例如 \\myserver)。
- servicename:## 指定 getkeyname 操作返回的服务名称。
- command:## 指定要执行的命令。
- start:## 启动服务。
- stop:## 停止服务。
- pause:##暂停服务。
- resume:## 恢复服务。
- remove:## 删除服务。
1-1-4 taskkill
代码语言:javascript
代码运行次数:0
运行
复制
taskkill /f /PID 进程号 ## 其中 /f 表示强杀、强制结束

/S    system           ## 指定要连接的远程系统。
/U    [domain\]user    ## 指定应该在哪个用户上下文执行这个命令。
/P    [password]       ## 为提供的用户上下文指定密码。如果忽略,提示输入。
/FI   filter           ## 应用筛选器以选择一组任务。允许使用 "*"。例如,映像名称 eq acme*
/PID  processid        ## 指定要终止的进程的 PID。使用 TaskList 取得 PID。
/IM   imagename        ## 指定要终止的进程的映像名称。通配符 '*'可用来指定所有任务或映像名称。
/T                     ## 终止指定的进程和由它启用的子进程。
/F                     ## 指定强制终止进程。

/?                     ## 显示帮助消息。

2 筛选器:
    筛选器名      有效运算符                有效值
    -----------   ---------------           -------------------------
    STATUS        eq, ne                    RUNNING |NOT RESPONDING | UNKNOWN
    IMAGENAME     eq, ne                    映像名称
    PID           eq, ne, gt, lt, ge, le    PID 值
    SESSION       eq, ne, gt, lt, ge, le    会话编号。
    CPUTIME       eq, ne, gt, lt, ge, le    CPU 时间,格式为 hh:mm:ss。 hh - 时, mm - 分,ss - 秒
    MEMUSAGE      eq, ne, gt, lt, ge, le    内存使用量,单位为 KB
    USERNAME      eq, ne                    用户名,格式为 [domain\]user
    MODULES       eq, ne                    DLL 名称
    SERVICES      eq, ne                    服务名称
    WINDOWTITLE   eq, ne                    窗口标题
    说明
    ----
    1) 只有在应用筛选器的情况下,/IM 切换才能使用通配符 '*'。
    2) 远程进程总是要强行 (/F) 终止。
    3) 当指定远程机器时,不支持 "WINDOWTITLE" 和 "STATUS" 筛选器。


3、例如
    TASKKILL /IM notepad.exe
    TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
    TASKKILL /F /IM cmd.exe /T
    TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
    TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe
    TASKKILL /S system /U domain\username /FI "USERNAME ne NT*" /IM *
    TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"
代码语言:javascript
代码运行次数:0
运行
复制
eventvwr.msc     ## --------------- 事件查看器
1-1-5 del
代码语言:javascript
代码运行次数:0
运行
复制
 del /ah /f DLLHOST.exe  -------------- ## 其中 /ah 是只删除所有隐藏文件的意思
 
/p  ## 提示您确认是否删除指定的文件。
/f  ## 强制删除只读文件。
/s  ## 从当前目录及其所有子目录中删除指定文件。显示正在被删除的文件名。
/q  ## 指定安静模式。不对删除确认作出提示。
/a  ## 根据指定的属性删除文件。
1-1-6 dir
代码语言:javascript
代码运行次数:0
运行
复制
dir /s rundll32.exe

/p	## 一次显示一屏列表。要查看下一个屏幕,请按任意键。
/q	## 显示文件所有权信息
/w	## 以宽格式显示列表,每行最多包含五个文件名或目录名
/d	## 以与 /w 相同的格式显示列表,但文件按列排序。
/a	## 仅显示具有您指定属性的目录和文件的名称。
/t  ## 指定要显示或用于排序的时间字段。可用的时间字段值为:c - Creationa - 最后访问w - 最后写入
/s	## 列出指定目录和所有子目录中指定文件名的每次出现。
/b	## 显示目录和文件的裸列表,没有其他信息。 /b 参数覆盖 /w。
/l	## 使用小写显示未排序的目录名和文件名。
/n	## 在屏幕的最右侧显示带有文件名的长列表格式。
/x	## 显示为非 8dot3 文件名生成的短名称。显示与 /n 的显示相同,但在长名称之前插入短名称。
/c	## 以文件大小显示千位分隔符。这是默认行为。使用 /-c 隐藏分隔符。
/4	## 以四位数格式显示年份。
/r	## 显示文件的备用数据流。
/?	## 在命令提示符处显示帮助。
1-1-7 attrrib
代码语言:javascript
代码运行次数:0
运行
复制
## attrib是dos和Windows系统中的一个用于更改文件或目录属性的命令,它的语法格式如下:

attrib [+r | -r] [+a | -a] [+s | -s] [+h | -h] [驱动器:][路径]文件名 [/s [/d]]

attrib 命令有4个常用参数:
r ## 读
a ## 存档
s ## 系统
h ## 隐藏分别为、、、等属性。这些参数用来更改文件或目录的属性,其中加号(+)代表添加属性,减号(-)代表取消属性。

## 例如,+r 表示将文件设置为“只读”, -r 表示将其取消“只读”属性;

## +h 表示将文件的隐藏属性设置为“是”,-h 则表示取消这个属性。

## attrib 命令除了可以更改文件的属性,还可以使用 /d 和 /s 参数循环遍历目录中的文件和文件夹。其中,/d 参数用于更改目录的属性, /s参数用于同时更改当前目录下所有子目录中的文件和文件夹的属性。


## 实例1:将文件设置为“只读”
attrib +r c:\test.txt

如果想要取消某个文件的只读属性
attrib -r c:\test.txt


## 实例2:将目录以及目录下的文件和文件夹设置为隐藏
首先,先用命令行生成一个mydoc文件夹
if not exist c:\mydoc md c:\mydoc

## 然后再创建3个文件夹
for /l %i in (1 1 3) do md c:\mydoc\%i

## 在命令提示符下输入如下命令:
attrib +h /s /d c:\mydoc

## 如果想要取消某个目录及其子目录下的所有隐藏属性,输入如下命令即可:
attrib -h /s /d c:\mydoc
1-1-8 指定我们自己的终端
代码语言:javascript
代码运行次数:0
运行
复制
 setp c:\www\1111\cmd.exe
1-1-9 net user
代码语言:javascript
代码运行次数:0
运行
复制
## 1、增加用户
	net user username password /add
	
## 2、删除用户
	net user username /del
	
## 3、修改用户密码
	net user username newpassword

## 4、升级用户为管理员
	net localgroup administrators username /add

## 5、将管理员账户降为普通用户
	net localgroup administrators username /del

## 6、查看所有用户
	net user

## 7、查看特定用户信息
	net user username

## 8、激活特定用户
	net user username /active:yes

## 9、禁用特定用户
	net user username /active:no

## 10、查看特定用户组所包含的用户
	net localgroup groupname
1-1-10 快速查找未打补丁的EXP
代码语言:javascript
代码运行次数:0
运行
复制
## 快速查找未打补丁的 exp,可以最安全的减少目标机的未知错误,以免影响业务。 命令行下执行检测未打补丁的命令如下:

systeminfo>micropoor.txt&(for %i in ( KB977165 KB2160329 KB2503665 KB2592799 KB2707511 KB2829361 KB2850851 KB3000061 KB3045171 KB3077657 KB3079904 KB3134228 KB3143141 KB3141780 ) do @type micropoor.txt|@find /i "%i"|| @echo %i you can fuck)&del /f /q /a micropoor.txt
1-1-11 sc

SC 是用于与服务控制管理器和服务进行通信的命令行程序。提供的功能类似于“控制面板”中“管理工具”项中的“服务”。

代码语言:javascript
代码运行次数:0
运行
复制
创建
# 安装服务
## 服务名称是redis,
C:\Windows\system32>sc create redis binpath= "D:\work\databases\Redis-x64-3.2.100\redis-server.exe --service-run D:\work\databases\Redis-x64-3.2.100\redis.windows.conf"
## 直接创建时也能设置显示名称
C:\Windows\system32>sc create redis binPath=D:\work\databases\Redis-x64-3.2.100\redis-server.exe DisplayName= redis

查询
# 使用query参数
C:\Windows\system32>sc query redis

SERVICE_NAME: redis
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 1077  (0x435)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

# 使用queryex参数(比query查询多出两个结果)
C:\Windows\system32>sc queryex redis

SERVICE_NAME: redis
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 1077  (0x435)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
        PID                : 0
        FLAGS              :

启动
# 先查询服务状态(STOPPED)
C:\Windows\system32>sc query redis

SERVICE_NAME: redis
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 1077  (0x435)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

# 启动服务(RUNNING)
C:\Windows\system32>sc start redis

SERVICE_NAME: redis
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_PRESHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
        PID                : 8896
        FLAGS              :

停止
# 直接停止
sc stop redis

# 添加停止原因和备注
sc stop redis 1:2:8 "must stop redis"

配置
# 配置服务的显示名称,这里将服务的显示名字redis改成REDIS显示(displayname不区分大小写,且等号后有空格)
C:\Windows\system32>sc config redis displayname= REDIS
[SC] ChangeServiceConfig 成功

# 配置服务描述
C:\Windows\system32>sc description redis "redis的描述内容"
[SC] ChangeServiceConfig2 成功

删除
#删除服务
C:\Windows\system32>sc delete redis
[SC] DeleteService 成功

# 删除后再查看
C:\Windows\system32>sc query redis
[SC] EnumQueryServicesStatus:OpenService 失败 1060:

指定的服务未安装。

实例
手动启动
sc Create 手动 binPath= "cmd /K start" type= own type= interact
sc start 手动

sc Create 手动启动 binPath= "cmd /K start" type= own type= interact start= DEMAND 
sc start 手动启动


测试
sc Create aini binPath= "cmd /K start" type= own type= interact start= AUTO  
sc start aini
1-1-12 netsh
代码语言:javascript
代码运行次数:0
运行
复制
a) 启用防火墙
  C:\>netsh firewall set opmode mode = enable

b) 关闭防火墙
  C:\>netsh firewall set opmode mode = disable

c) 重置防火墙
  C:\>netsh firewall reset

  1、查看网络配置
  netsh interface ip show {选项}
  {选项}可以是:
      address - ## 显示 IP 地址配置。
      config - ## 显示 IP 地址和更多信息。
      dns - ## 显示 DNS 服务器地址。
      icmp - ### 显示 ICMP 统计。
      interface - ## 显示 IP 接口统计。
      ipaddress - ## 显示当前 IP 地址
      ipnet - ## 显示 IP 的网络到媒体的映射。
      ipstats - ## 显示 IP 统计。
      joins - ## 显示加入的多播组。
      offload - ## 显示卸载信息。
      tcpconn - ##显示 TCP 连接。
      tcpstats - ## 显示 TCP 统计。
      udpconn - ## 显示 UDP 连接。
      udpstats - ## 显示 UDP 统计。
      wins - ## 显示 WINS 服务器地址。
      
  2、配置接口IP/网关IP
  netsh interface ip set address "本地连接" static 192.168.1.100 255.255.255.0 192.168.1.253
  ------------------------------
  C:\>netsh interface ip show config
      接口 "本地连接" 的配置
      DHCP 启用 否
      IP 地址 192.168.1.100
      子网掩码 255.255.255.0
      默认网关: 192.168.1.253
      GatewayMetric: 0
      InterfaceMetric 0
      静态配置的 DNS 服务器: 202.96.209.134
      静态配置的 WINS 服务器: 无
      用哪个前缀注册: 只是主要
      
  3、配置自动换取IP地址,DNS地址及wins地址
      netsh interface ip set address "本地连接" dhcp
      netsh interface ip set dns "本地连接" dhcp
      netsh interface ip set wins "本地连接" dhcp
      
  4、配置静态IP地址,DNS地址及wins地址
      netsh interface ip set address "本地连接" static 192.168.1.253
      netsh interface ip set dns "本地连接" static 202.96.209.6
      netsh interface ip set wins "本地连接" static 192.168.1.1
      
  5、查看并导出网络配置文件
  C:\>netsh -c interface dump >c:\dump.txt  (">"表示导出。">>"表示追加)
  #========================
  # 接口配置
  #========================
  pushd interface
  reset all
  popd
  # 接口配置结束
  #========================
  # 接口配置
  #========================
  pushd interface ipv6
  uninstall
  popd
  # 接口配置结束
  # ----------------------------------
  # ISATAP 配置
  # ----------------------------------
  pushd interface ipv6 isatap
  popd
  # ISATAP 配置结束
  # ----------------------------------
  # 6to4 配置
  # ----------------------------------
  pushd interface ipv6 6to4
  reset
  popd
  # 6to4 配置结束
  #=============
  # 端口代理配置
  #=============
  pushd interface portproxy
  reset
  popd
  # 端口代理配置结束
  # ----------------------------------
  # 接口 IP 配置
  # ----------------------------------
  pushd interface ip
  # "本地连接" 的接口 IP 配置
      set address name="本地连接" source=static addr=192.168.1.5 mask=255.255.255.0
      set address name="本地连接" gateway=192.168.1.1 gwmetric=0
      set dns name="本地连接" source=static addr=202.96.209.134 register=PRIMARY
      set wins name="本地连接" source=static addr=none
  popd
  # 接口 IP 配置结束
  
  6、导入网络配置文件
      C:\>netsh -f c:\dump.txt
      C:\>netsh exec c:\dump.txt
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-10-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 《Windows 系统常用指令深度解析与实战指南》
    • 1-1 常用指令
      • 1-1-1 telnet
      • 1-1-2 tracert
      • 1-1-3 系统服务
      • 1-1-4 taskkill
      • 1-1-5 del
      • 1-1-6 dir
      • 1-1-7 attrrib
      • 1-1-8 指定我们自己的终端
      • 1-1-9 net user
      • 1-1-10 快速查找未打补丁的EXP
      • 1-1-11 sc
      • 1-1-12 netsh
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档