最早于2008年系统地学习MS-Dos,当时刚初中毕业。从小深受父亲影响,对电脑的技术比较感兴趣,特别是对DOS。随着学习得不断深入,接触了大量数字媒体软件、框架还有编程界的知识,发现DOS有不可磨灭的魅力,未来仍旧有它的应用价值,而且是闪闪发光的价值。
下面就整理了几个应用技巧,还容纳了对应的案例一同分享学习。
技巧分享
【1】将一目录下的文件及文件夹名的相关信息导出保存至文档中
如下面的D盘根目录,装有很多软件,想把这些名称统一存至一个文档中,当成备份供日后查询,可使用下面的命令:
D:>dir > e:d.txt
dir
是查询当前目录下的文件及文件夹信息,使用>
命令,将数据以流的形式存放至一个txt
文本中,路径为e:d.txt
。
D盘符内容:
结果如下:
如果想限制查询到的格式类型,可以配合通配符,如:
dir *.js /s/b
其中*.js
表示该目录下的所有的js文件类型,/s
代表该路径下的所有文件,包括根目录、子目录,/b
代表只显示路径和文件名。
也可以用这样的语法来将查询到的指定格式文件的路径存放于txt中:
dir > doclist.txt /s /a /b .*.doc
如果想查找特定日期修改的文件,如查找2020年6月10日之后修改过的所有exe文件,并将列表存入文本,见下面做法:
forfiles /P . /S /M *.exe /D +2020/6/10 > e:1.txt
如图:
如果只想查找当天创建的文件,可以这样:
dir /s /tc | find "2021-9-25"
其中开关/t
,是以时间段(可搭配c“创建时间”,a“上次访问时间”,w“上次写入时间”)列出文件和文件夹。
也可这样:
dir /s /a *.* /t:c | find "%date:~5,5%" > .ddd.txt
用到了系统变量%date%
。
【2】寻找带有关键词的文本
使用FIND
命令,如查找特定目录下包含有“processing”的文本的docx文件名:
find /i "processing" *.docx
其中/i
意味着忽略大小写匹配。
find 还有很多开关可供选择,如可以显示对应行号等。针对在大量文件中查找关键词的问题是一个很方便的解决方法。比如找到了这些文件,可以借FOR循环语句重新拷贝做整理。很多时候几年前的文案中想找到一些特定信息是比较头疼的事,特别是名称没写规范没写清楚的情况。
【3】将多个文件合并存储
使用COPY
、TYPE
等命令。
如将多个MP3格式文件合并为一个:
copy /b 01.mp3+groove.mp3 new.mp3
copy /b a.mp3+b.mp3+c.mp3 comp.mp3
其中的/b
代表以二进制来处理数据。经测试文件正常播放,也可导入PR进行编辑。[PS:Windows10自带音频播放器播放合成文件有些问题,待研究]。
如将普通编码的文本合并:
copy /b 1.txt+d.txt 66.txt
也可借type
命令来完成,如:
type 1.txt >> 66.txt
意为将1.txt
文本追加到66.txt
文本末尾,如果使用>
,则为替换,将66.txt
文本替换为1.txt
。
【4】批量创建文件或做其他事务
使用FOR
命令,假设需要创建1.doc、2.doc、3.doc、4.doc...一直到20.doc这些空文档,那么可以这样写:
for /l %a in (1,1,20) do copy NUL %a.doc
for
命令的相关参数很多很杂,以后开单篇来说说,这里就针对此案例来解释。/l
代表使用计数循环模式,%a
是循环变量,(1,1,20)
代表以步长为1来递增数值,从1到20,do
后面是具体操作,这里需要创建空文档,可以借copy
命令来创建。具体的操作可以是多条语句,构成批处理,要将其命令封装成.bat
格式。
总结
很多有用的功能是要通过复合语句及搭配语法结构而创建的,借DOS系统强大的重定向操作符(管道机制)可以将逻辑描述的很复杂,以便解决实际情况。还有更多的实用技巧慢慢整理汇总。Windows再怎么强大,都离不开DOS的命令行,这是毋庸置疑的!希望DOS能更好地服务你我他。
PS
在Windows10系统中,想要快速打开基于某个目录下的dos命令提示符,有三种方法:
一、按下Shift
键,然后同时右键鼠标,在弹出的菜单栏中选择【在此处打开CMD窗口】或者【在此处打开PowerShell窗口】
二、直接在资源管理器描述目录路径的字符框中键入cmd
并回车即可。
三、使用传统方式打开CMD界面,如点击【开始】,键入cmd
并回车;然后复制想要进入的目录路径,回到cmd界面,键入cd
然后右键,系统帮我们将剪贴板中的字符粘贴入命令行中,回车执行即可,或者直接拖拽文件夹至cmd窗口中也可粘贴其全路径。
参考文献
[1] https://blog.csdn.net/u012325601/article/details/79210881 DOS命令之COPY
[2] http://www.360doc.com/content/14/0212/22/9849466_352039289.shtml copy /b命令无缝合并多个文件
[3] https://tieba.baidu.com/p/83980305 兄弟们,怎么用DOS命令列出今天(或特定日期)创建的所有文件
[4] https://www.cnblogs.com/mq0036/p/13825890.html 常用DOS命令之find和findstr的用法详解
[5] https://blog.csdn.net/weixin_34132768/article/details/89995091 DOS技巧100例
[6] https://blog.csdn.net/qazwsxrx/article/details/111978462 Windows命令行按时间查找特定类型的文件
[7] http://www.360doc.com/content/11/0603/17/2961363_121467069.shtml DOS命令大全:Dir命令详解
[8] https://blog.csdn.net/qazwsxrx/article/details/111978462 Windows命令行按时间查找特定类型的文件
[9] https://blog.csdn.net/hxmilyy1/article/details/84599892 dos for命令详解