Windows常用cmd命令
帮助命令
如help、/?等,用于获取程序或命令的帮助信息。
help [命令名]
help dir # 系统会显示出dir命令的详细帮助信息。
查看端口占用
# 查询端口占用情况
netstat -qo
# 根据端口号查PID
netstat -ano | findstr 端口号
# 根据进程号查程序名
tasklist | findstr pid号
# 查询java进程号
tasklist | findstr java
# 杀死进程
taskkill /f /t /im 程序名称
taskkill /f /t /pid 进程号
# 查看taskkill用法
taskkill /?
# 例如:
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*"
# 查看tasklist用法
tasklist /?
# 查看pid大于2W的进程列表详情
tasklist /v /fi "PID gt 20000"
# 查看java进程列表详情
tasklist /v /fi "IMAGENAME eq java.exe"
文件操作命令
如dir、md、rd等,用于在计算机中进行文件和文件夹的操作。
查看目录-dir
# 基础操作
/s # 查找当前目录以及所有子目录下的文件,(不要 /s 参数时,则今显示当前目录的文件或目录)
/b # 舍弃标题与摘要内容
/l # 文件名有英文字母时,全部以小写英文字母显示
/a:d # 只显示文件夹(包括隐藏文件夹), 冒号也可以省略 /ad,效果是一样的。
/a:h # 只显示隐藏文件(包含具有当前属性的其他三种文件、夹)
/a:r # 仅显示只读文件(包含具有当前属性的其他三种文件、夹)
/a:s # 仅显示系统文件(包含具有当前属性的其他三种文件、夹)
/a:a # 仅显示存档文件(包含具有当前属性的其他三种文件、夹)
# 文件排序
/o # 按照分类顺序列出文件
N # 按名称(字母顺序) /on 或 /o:n 此方式是dir的默认显示格式,即没有使用/o命令时,则默认以名称排序
S # 按大小(从小到大) /os 或 /o:s
E # 按扩展名(字母顺序) /oe 或 /o:e
D # 按日期/时间(从先到后) /od 或 /o:d
G # 组目录优先 /og 或 /o:g
- # 反转顺序的前缀 /o-d 或 /o:-d
# 参数的顺序为 g>d>e>s>n 组>日期>扩展名>大小>名称
dir /b /od # 按时间排序
dir /b /o:-d # 按时间倒序
# /t 控制时间的参数
dir /t:c # 文件创建日期
dir /t:a # 上次访问时间
dir /t:w # 上次写入时间
# 只显示文件不显示文件夹
dir /a:a 或 dir /aa
dir /a:-d 或 dir /a-d
# 只显示文件不显示文件夹
dir /a:d 或 dir /ad
dir /a:-a 或 dir /a-a
# 显示所有的txt文件
dir *.txt
# 只显示文件(不显示系统、只读、隐藏)不显示文件夹
dir /a:a-h-r-s
# 递归显示目录结构,不显示文件
tree
# 递归显示目录结构,也显示文件
tree /f
# 将目录结构重定向到文本
tree /f > info.txt
查找文件-for
# 递归查询当前目录下所有后缀是txt的文件
for /r ./ %i in (*.txt) do @echo %i
- /r 表示递归搜索指定路径及所有子目录
- ./ 表示当前目录
- %i 是参数名称
- @echo 表示回显
字符串查找-find
find "要查找的字符串" 要查找的文件(不在当前目录则需要给出完整路径)
不支持正则
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] “string” [[drive:][path]filename[ …]]
# find /n /i "abc" d:\abc.txt
/V # 显示所有未包含指定字符串的行。
/C # 仅显示包含字符串的行数。
/N # 显示行号。
/I # 搜索字符串时忽略大小写。
/OFF[LINE] # 不要跳过具有脱机属性集的文件。
“string” # 指定要搜索的文字串,
[drive:][path]filename # 指定要搜索的文件。
findstr和find 查找汉字时只能在936代码下使用,且查找的文件须为中文编码,utf-8格式会导致查找不到
findstr 不能搜索 UTF-8 编码文件怎么办?
使用命令 chcp 修改当前活动代码页编号:chcp 65001 (936/GB2312,20127/US-ASCII,65001/UTF-8)
字符串查找增强-findstr
支持正则
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/F:file] [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
strings [[drive:][path]filename[ …]]
# findstr "abc" d:\abc.txt
# findstr "hello there" x.txt (在文件 x.txt 中寻找 “hello” 或 “there” )
# findstr /C:"hello there" x.txt (在文件 x.txt 寻找 “hello there” )
# findstr /s /i "MSN" *.txt (当前目录和所有子目录中的txt文件中搜索字符串"MSN"(不区分字母大小写))
/B # 在一行的开始配对模式。
/E # 在一行的结尾配对模式。
/L # 按字使用搜索字符串。
/R # 将搜索字符串作为一般表达式使用。
/S # 在当前目录和所有子目录中搜索匹配文件。
/I # 指定搜索不分大小写。
/X # 打印完全匹配的行。
/V # 只打印不包含匹配的行。
/N # 在匹配的每行前打印行数。
/M # 如果文件含有匹配项,只打印其文件名。
/O # 在每个匹配行前打印字符偏移量。
/P # 忽略有不可打印字符的文件。
/OFF[LINE] # 不跳过带有脱机属性集的文件。
/A:attr # 指定有十六进位数字的颜色属性。请见 “color /?”
/F:file # 从指定文件读文件列表 (/ 代表控制台)。
/C:string # 使用指定字符串作为文字搜索字符串。
/G:file # 从指定的文件获得搜索字符串。 (/ 代表控制台)。
/D:dir # 查找以分号为分隔符的目录列表
strings # 要查找的文字。
[drive:][path]filename # 指定要查找的文件。
# findstr 命令中正则表达式的用法规则
. # 通配符: 任何字符
* # 重复: 以前字符或类别出现零或零以上次数
^ # 行位置: 行的开始
$ # 行位置: 行的终点
[class] # 字符类别: 任何在字符集中的字符
[^class] # 补字符类别: 任何不在字符集中的字符
[x-y] # 范围: 在指定范围内的任何字符
\x # Escape: 元字符 x 的文字用法
\<xyz # 字位置: 字的开始
xyz\> # 字位置: 字的结束
创建目录-md
md floder
创建文件-cd.
# cd创建空文件
cd. > a.txt
# type创建空文件
type nul>1.txt
# cmd创建空文件
cmd. > 1.txt
# echo创建非空文件
echo 1 > 1.txt
文件写入-echo
# 覆盖文件内容
echo 新的文本内容 > 1.txt
# 追加文件内容
echo 新的文本内容 >> 1.txt
修改文件-ren
ren 1.txt 2.txt
rename 1.txt 2.txt
move 1.txt 2.txt
# 批量修改
ren *.png *.jpg
删除文件-del
# 删除文件或文件夹(有提示)
del 1.txt
# 强制删除(无提示)
del /q 1.txt
# 删除空文件夹
rd test
# 删除非空文件夹(有提示)
rd /s test
# 强制删除非空文件夹(无提示)
rd /q /s test
复制文件-copy
copy 1.txt d:\\test
# 复制文件并且重命名文件
copy 1.txt d:\\test\2.txt
# 复制文件夹包含子目录
Xcopy d://test1 d:test2 /E
移动文件-move
move 1.txt d:\\test
系统管理命令
如ping、ipconfig、taskkill等,用于进行计算机系统的管理。
随机生成UUID
POWERSHELL -c "([guid]::NewGuid()).Guid"
POWERSHELL -c "[guid]::NewGuid().ToString().ToUpper()"
ping [IP地址或主机名]
用于测试主机之间的网络连接状态
ipconfig(查看网络配置)
用于显示当前计算机的网络配置信息,包括IP地址、网关、MAC地址等信息
calc(调用Windows计算器)
regedit(打开注册表)
control(打开控制面板)
网络通信命令
如nslookup、netstat、ftp等,用于计算机之间的网络通信。
nslookup [域名或IP地址]
用于查询DNS服务器中的域名解析信息
ftp [主机名或IP地址]
用于在两台计算机之间进行文件传输
例如,想要连接一个名为"ftpserver"的FTP服务器,可以输入以下命令:ftp ftpserver
这时系统会自动连接到该FTP服务器,并提示输入用户名和密码进行认证。
其他命令
如attrib、cmd、exit等,包含一些其他类型的常用命令。
文件属性-attrib
attrib /s
清空屏幕-cls
cls
退出-exit
exit
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步