• 【批处理DOS-CMD命令-汇总和小结】-查看或修改文件属性(ATTRIB),查看、修改文件关联类型(assoc、ftype)


    一、查看或修改文件属性——ATTRIB

    先执行命令【attrib /?】,看看帮助信息。

    1. C:\Users\Administrator>attrib /?
    2. 显示或更改文件属性。
    3. ATTRIB [+R | -R] [+A | -A] [+S | -S] [+H | -H] [+O | -O] [+I | -I] [+X | -X] [+P | -P] [+U | -U]
    4. [drive:][path][filename] [/S [/D]] [/L]
    5. + 设置属性。
    6. - 清除属性。
    7. R 只读文件属性。
    8. A 存档文件属性。
    9. S 系统文件属性。
    10. H 隐藏文件属性。
    11. O 脱机属性。
    12. I 无内容索引文件属性。
    13. X 无清理文件属性。
    14. V 完整性属性。
    15. P 固定属性。
    16. U 非固定属性。
    17. [drive:][path][filename]
    18. 指定属性要处理的文件。
    19. /S 处理当前文件夹及其所有子文件夹中
    20. 的匹配文件。
    21. /D 也处理文件夹。
    22. /L 处理符号链接和
    23. 符号链接目标的属性
    24. C:\Users\Administrator>

    例:

    1. md autorun
    2. attrib +a +s +h autorun

    上面的命令将建立文件夹autorun,然后将其设为存档、系统、隐藏属性

    二、查看与修改文件扩展名关联的文件类型——assoc

    2.1 显示命令assoc的帮助信息

    打印assoc的帮助信息,执行命令【assoc /?】。

    1. C:\Users\Administrator>assoc /?
    2. 显示或修改文件扩展名关联
    3. ASSOC [.ext[=[fileType]]]
    4. .ext 指定跟文件类型关联的文件扩展名
    5. fileType 指定跟文件扩展名关联的文件类型
    6. 键入 ASSOC 而不带参数,显示当前文件关联。如果只用文件扩展
    7. 名调用 ASSOC,则显示那个文件扩展名的当前文件关联。如果不为
    8. 文件类型指定任何参数,命令会删除文件扩展名的关联。
    9. C:\Users\Administrator>

    2.2 显示所有扩展名对应的文件类型 

    执行不带任何参数的命令【assoc】,得到所有扩展名对应的文件类型,如下所示(仅摘录一部分)。

    1. C:\Users\Administrator>assoc
    2. .3ds=Photoshop.3DSFileType.140
    3. .3gp=WMP11.AssocFile.3GP
    4. .AAC=WMP11.AssocFile.ADTS
    5. .abr=Photoshop.BrushesFile
    6. .csv=Excel.CSV
    7. .dat=xmp.dat
    8. .db=ANSYS 2020 R2 .db File
    9. .doc=Word.Document.8
    10. .dll=dllfile
    11. .mp3=WMP11.AssocFile.MP3
    12. .mp4=WMP11.AssocFile.MP4
    13. .mpeg=WMP11.AssocFile.MPEG
    14. .png=pngfile
    15. .txt=txtfile
    16. .xml=xmlfile

    2.3 显示指定文件扩展名对应的文件类型 

    执行带有扩展名参数的命令【assoc .ext】,会显示扩展名对应的文件类型。

    例如执行【assoc .exe】,返回结果是【.exe=exefile】,说明.exe对应的文件类型是exefile。

    另外.txt的文件类型是txtfile,而.doc的文件类型是Word.Document.8。

    assoc .txt        #显示.txt代表的'文件类型',结果显示 .txt=txtfile
    assoc .doc      #显示.doc代表的'文件类型',结果显示 .doc=Word.Document.8

    三、查看与修改文件扩展名关联的程序——ftype

    3.1 查看命令ftype的帮助信息

    先执行命令【ftype /?】,查看帮助信息。

    1. C:\Users\Administrator>ftype /?
    2. 显示或修改用在文件扩展名关联中的文件类型
    3. FTYPE [fileType[=[openCommandString]]]
    4. fileType 指定要检查或改变的文件类型
    5. openCommandString 指定调用这类文件时要使用的开放式命令。
    6. 键入 FTYPE 而不带参数来显示当前有定义的开放式命令字符串的
    7. 文件类型。FTYPE 仅用一个文件类型启用时,它显示那个文件类
    8. 型目前的开放式命令字符串。如果不为开放式命令字符串指定,
    9. FTYPE 命令将删除那个文件类型的开放式命令字符串。在一个
    10. 开放式命令字符串之内,命令字符串 %0 或 %1 被通过关联调用
    11. 的文件名所代替。%* 得到所有的参数,%2 得到第一个参数,
    12. %3 得到第二个,等等。%~n 得到其余所有以 nth 参数打头的
    13. 参数;n 可以是从 2 到 9 的数字。例如:
    14. ASSOC .pl=PerlScript
    15. FTYPE PerlScript=perl.exe %1 %*
    16. 允许你启用以下 Perl 脚本:
    17. script.pl 1 2 3
    18. 如果不想键入扩展名,则键入以下字符串:
    19. set PATHEXT=.pl;%PATHEXT%
    20. 被启动的脚本如下:
    21. script 1 2 3
    22. C:\Users\Administrator>

    3.2 查看所有文件类型对应的启动程序

    执行不带参数的ftype命令,结果如下(不完全)。

    1. C:\Users\Administrator>ftype
    2. Excel.CSV="D:\Program Files\Microsoft Office\Office16\EXCEL.EXE" /dde
    3. Folder=%SystemRoot%\Explorer.exe
    4. http="C:\Program Files\Internet Explorer\iexplore.exe" %1
    5. https="C:\Program Files\Internet Explorer\iexplore.exe" %1
    6. kugou="D:\Program Files (x86)\KuGou\KGMusic\KuGou.exe" "%1"
    7. Python.ArchiveFile="C:\WINDOWS\py.exe" "%L" %*
    8. Python.CompiledFile="C:\WINDOWS\py.exe" "%L" %*
    9. Python.File="C:\WINDOWS\py.exe" "%L" %*
    10. Python.NoConArchiveFile="C:\WINDOWS\pyw.exe" "%L" %*
    11. Python.NoConFile="C:\WINDOWS\pyw.exe" "%L" %*
    12. WinRAR="D:\Program Files\WinRAR\WinRAR.exe" "%1"
    13. WinRAR.REV="D:\Program Files\WinRAR\WinRAR.exe" "%1"
    14. WinRAR.ZIP="D:\Program Files\WinRAR\WinRAR.exe" "%1"

    3.3 查看指定文件类型对应的启动程序

    语法规则。

    ftype filetype   # 文件类型字符串前不用添加点号

    执行命令【ftype exefile】,结果为【exefile="%1" %*】。

    执行命令【ftype txtfile】,结果为【txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1】。

    3.4 修改指定文件类型对应的启动程序

     语法规则。

    ftype filetype=openCommandString   # 文件类型字符串前不用添加点号

    普通用户一般用不上这种规则,因为启动程序字符串太难懂。

    对于一般用户来说,经常用到的操作无非就是将某一个扩展名和某一文件类型关联起来,比如doc与word应用关联,这是不需要用到ftype命令的,直接用一个命令【assoc .doc=Word.Document.8】即可。

    三、windows系统打开文件的流程


    当你双击一个.txt文件时,windows并不是根据.txt直接判断用 notepad.exe 打开。

    而是先由命令【assoc .txt】的执行结果【.txt=txtfile】判断得知.txt属于txtfile文件类型,

    再调用txtfile关联的命令行,也即【txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1】所对应的程序。

    四、windows恢复文件关联

    4.1 除了exe程序,恢复关联直接用命令

    例如,上面执行命令【assoc .txt=Word.Document.8】,对txt扩展名文件更改文件类型后,要想恢复至原先的关联,可以用命令【assoc .txt=txtfile】

    4.2 对于exe程序,恢复关联需要用到.com

    exe文件是windows系统中的可执行文件,而文件关联决定了文件的打开方式。

    当我们不小心更改exe程序关联后,cmd程序无法正常打开。

    如何正确恢复exe文件关联呢?

    首先在C:\WINDOWS\system32(64位WOW64)目录下找到cmd.exe,选中文件后按下F2键,修改文件名为cmd.com。

    接着双击执行cmd.com,弹出命令行窗口,输入命令【assoc .exe=exefile】并回车。

  • 相关阅读:
    最佳镜像搬运工 Skopeo 指南
    The Sandbox 和数字好莱坞达成合作,通过人力资源开发加速创作者经济的发展
    zabbix监控添加监控项及其监控Mysql、nginx
    [附源码]计算机毕业设计基于SpringBoot的高校课程知识库
    WiFi信号感知精度
    Wireshark分析https流量
    一文搞懂GPU的概念、工作原理,以及与CPU的区别
    电商行业:全链路监测广告投放效果,用数据驱动业务增长
    RocketMq开启安全认证ACL-解决服务器系统安全漏洞
    MySQL中的字符集与排序规则详解
  • 原文地址:https://blog.csdn.net/PSpiritV/article/details/125629625