Windows:文件、目录与磁盘
浏览目录、切换位置与保存目录栈
以下大部分是 cmd 命令。先用 dir/tree 查看,再用 cd 进入目录;pushd/popd 用于临时切换并返回,subst 映射虚拟盘符。
dir(Windows) · 列出目录的内容
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/dir。
- 显示当前目录的内容:
dir- 显示指定目录的内容:
dir {{目录的路径}}- 显示当前目录的内容,包括隐藏的文件:
dir /A- 显示指定目录的内容,包括隐藏的文件:
dir {{目录的路径}} /Atree(Windows) · 以目录树的形式显示指定目录的所有文件夹和文件
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/tree。
- 显示当前目录的目录树:
tree- 显示指定目录的目录树:
tree {{目录的路径}}- 显示目录中文件的目录树:
tree {{目录的路径}} /f- 使用 ASCII 字符而不是扩展字符显示目录树:
tree {{目录的路径}} /acd(Windows) · 显示当前工作目录或移动到其他工作目录
在 PowerShell 中,此命令是“Set-Location”的别名。本文档基于的是命令提示符(cmd)版本的。 更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/cd。
- 原命令的文档在:
tldr set-location- 显示当前目录的路径:
cd- 访问当前硬盘的某一个特定目录:
cd {{path\to\directory}}- 转到位于另一驱动器上的特定目录:
cd /d {{C}}:{{path\to\directory}}- 访问当前目录的上级目录:
cd ..- 访问当前用户的主目录:
cd %userprofile%- 访问当前驱动器的根目录:
cd \pushd(Windows) · 将目录储存在栈顶以便稍后访问
另请参阅:
popd。 更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/pushd。
- 切换目录并将它放至栈:
pushd {{目录}}popd(Windows) · 将当前目录切换到pushd命令存储的目录
另请参阅:
pushd。 更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/popd。
- 切换到储存在栈顶的目录:
popdsubst(Windows) · 将路径与虚拟驱动器号关联
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/subst。
- 列出已激活的关联:
subst- 添加一个关联:
subst {{Z:}} {{C:\Python2.7}}- 删除一个关联:
subst {{Z:}} /dexplorer(Windows) · Windows 文件资源管理器
- 打开 Windows 文件资源管理器:
explorer- 在当前目录打开 Windows 文件资源管理器:
explorer .- 在指定目录打开 Windows 文件资源管理器:
explorer {{路径\到\目录}}读取内容、分页搜索与复制到剪贴板
type 输出文件,more 分页,find 检索字符串,clip 接收输出到剪贴板。
type(Windows) · 显示文件的内容
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/type。
- 显示特定文件的内容:
type {{文件的路径}}more(Windows) · 分页显示标准输入或文件的输出
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/more。
- 分页显示标准输入的输出:
{{echo test}} | more- 分页显示一个或多个文件的内容:
more {{文件的路径}}- 将制表符转换为指定的空格数:
more {{文件的路径}} /t{{空格数}}- 显示内容前先清屏:
more {{文件的路径}} /c- 从第 5 行开始显示输出:
more {{文件的路径}} +{{5}}- 启用扩展交互模式(请参阅使用帮助):
more {{文件的路径}} /e- 显示全部帮助信息:
more /?find(Windows) · 在一个或多个文件里查找指定字符串
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/find。
- 查找包含指定字符串的行:
find "{{字符串}}" {{文件或目录的路径}}- 查找不包含指定字符串的行:
find "{{字符串}}" {{文件或目录的路径}} /v- 显示包含指定字符串的行的总数:
find "{{字符串}}" {{文件或目录的路径}} /c- 显示匹配行及其行号:
find "{{字符串}}" {{文件或目录的路径}} /nclip(Windows) · 将输入的内容复制到 Windows 的剪贴板
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/clip。
- 用管道将命令的输出内容复制到 Windows 剪贴板:
{{dir}} | clip- 将一个文件中的内容复制到 Windows 剪贴板:
clip < {{文件的路径}}创建、复制、批量选择与删除
mkdir 创建目录,xcopy 复制树,forfiles 按条件选择文件并执行命令;del 删除文件,rmdir 删除目录,mklink 创建链接。
mkdir(Windows) · 创建一个目录
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/mkdir。
- 创建一个目录:
mkdir {{目录名}}- 递归创建目录及子目录:
mkdir {{子目录名}}xcopy(Windows) · 复制文件和目录树
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/xcopy。
- 复制文件到指定的路径:
xcopy {{被复制的目录路径}} {{目标路径}}- 列出在复制前将要被复制的文件:
xcopy {{文件或目录的路径}} {{目标路径}} /l- 仅复制目录结构,不包括文件:
xcopy {{文件或目录的路径}} {{目标路径}} /t- 复制时包含空目录:
xcopy {{文件或目录的路径}} {{目标路径}} /e- 复制文件时保留 ACL 信息:
xcopy {{文件或目录的路径}} {{目标路径}} /o- 网络连接丢失时允许恢复:
xcopy {{文件或目录的路径}} {{目标路径}} /z- 当文件存在于目标路径中时禁用提示:
xcopy {{文件或目录的路径}} {{目标路径}} /y- 显示详细的使用帮助:
xcopy /?forfiles(Windows) · 选择一个或多个文件以执行指定的命令
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/forfiles。
- 在当前的目录中寻找文件:
forfiles- 在一个指定目录中寻找文件:
forfiles /p {{目录的路径}}- 为每个文件执行指定的命令:
forfiles /c "{{命令}}"- 使用通配符来寻找指定的文件:
forfiles /m {{通配符}}- 递归寻找文件:
forfiles /s- 搜索超过 5 天的文件:
forfiles /d -{{5}}mklink(Windows) · 创建符号链接
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/mklink。
- 创建指向文件的符号链接:
mklink {{链接文件的路径}} {{源文件路径}}- 创建指向目录的符号链接:
mklink /d {{链接文件的路径}} {{源目录路径}}- 创建指向文件的硬链接:
mklink /h {{链接文件的路径}} {{源目录路径}}- 创建目录链接:
mklink /j {{链接文件的路径}} {{源目录路径}}del(Windows) · 删除一个或多个文件
在 PowerShell 中,此命令为
Remove-Item的別名。本页的描述是基于命令提示符 (cmd) 中的del。 更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/del。
- 查阅 PowerShell 的对应命令:
tldr remove-item- 删除一个或多个文件 (可使用通配符):
del {{文件1 文件2 ...}}- 在删除每个文件之前提示确认:
del {{文件}} /p- 强制删除只读文件:
del {{文件}} /f- 递归删除所有子目录中的文件:
del {{文件}} /s- 在基于全局通配符删除文件时不提示确认:
del {{文件}} /q- 根据指定的属性删除文件:
del {{文件}} /a {{属性}}- 显示帮助和所有的属性列表:
del /?rmdir(Windows) · 删除目录及其内容
在 PowerShell 中,此命令是
Remove-Item的别名。此文档基于cmd版本的rmdir。 更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/rmdir。
- 查看等效的 PowerShell 命令的文档:
tldr remove-item- 删除一个空目录:
rmdir {{路径\到\目录}}- 递归删除目录及其内容:
rmdir {{路径\到\目录}} /s- 递归删除目录及其内容,无需提示:
rmdir {{路径\到\目录}} /s /q管理属性、所有权、加密与完整性
属性、所有者、NTFS 加密和系统文件修复分别查阅对应命令。Get-FileHash 是 PowerShell 命令,与本页 cmd 命令的运行环境不同。
attrib(Windows) · 显示或修改文件和目录的属性
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/attrib。
- 显示当前目录下所有文件的属性:
attribtakeown(Windows) · 取得文件或目录的所有权
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/takeown。
- 取得指定文件的所有权:
takeown /f {{路径/文件}}- 取得指定目录的所有权:
takeown /f {{路径/目录}}- 取得指定目录和所有子目录的所有权:
takeown /f {{路径/目录}} /r- 将所有权更改为管理员组,而不是当前用户:
takeown /a /f {{路径/文件}}cipher(Windows) · 加密或解密 NTFS 驱动器上的文件
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/cipher。
- 加密文件或目录:
cipher /e:{{路径/文件或目录}}- 解密文件或目录:
cipher /d:{{路径/文件或目录}}- 覆盖指定目录所在卷的未分配空间;不删除该目录中现存文件:
cipher /w:{{卷内目录}}Get-FileHash(Windows) · 计算一个文件的 HASH 值
更多信息:https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/get-filehash。
- 使用 SHA256 算法计算给定文件的哈希值:
Get-FileHash {{文件路径}}- 使用指定的哈希算法计算给定文件的哈希值:
Get-FileHash {{文件路径}} -Algorithm {{SHA1|SHA384|SHA256|SHA512|MD5}}sfc(Windows) · 扫描 Windows 系统文件的完整性
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/sfc。
- 扫描所有的系统文件,如果可能的话,修复所有出现的问题:
sfc /scannow- 扫描系统文件,但不修复出现的问题:
sfc /verifyonly- 扫描指定的文件,如果可能的话,修复所有出现的问题:
sfc /scanfile={{文件的路径}}- 扫描指定的文件,但不修复出现的问题:
sfc /verifyfile={{文件的路径}}- 当离线修复时,指定引导目录:
sfc /offbootdir={{目录的路径}}- 当离线修复时,指定 Windows 目录:
sfc /offwindir={{文件的路径}}- 显示命令的使用方法:
sfc查看和修改扩展名关联
assoc 管理扩展名与文件类型的映射,ftype 管理文件类型对应的打开命令,两者配合查阅。
assoc(Windows) · 显示或修改文件扩展名关联
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/assoc。
- 显示所有当前文件扩展名关联的列表:
assoc- 显示指定扩展名的关联文件类型:
assoc {{.txt}}- 将文件扩展名与特定的文件类型关联:
assoc {{.txt}}={{txtfile}}ftype(Windows) · 显示或修改用于文件扩展名关联的文件类型
更多信息:https://learn.microsoft.com/windows-server/administration/windows-commands/ftype。
- 显示所有文件类型的列表:
ftype- 显示特定文件类型的关联程序:
ftype {{文件类型}}- 设置特定文件类型的关联程序:
ftype {{文件类型}}="{{可执行命令的路径}}"示例整理自 tldr-pages,作者为 tldr-pages team and contributors,遵循 CC BY 4.0。
继续阅读
- 知识专题
- 完整实践
- 命令与观察