批处理 文件操作(二)

前言

在旧博客中找到一篇文件操作的文档,整理了一下。

正文

md

md 是创建文件夹的意思。

但是也不是所有文件夹都可以创建。

比如说创建 md x#4,这种特殊字符的东西,你需要做的事md "x#4".要打上双引号。

然后你创建多个文件的时候可以这样:md xx yy这样就可以创建xx和yy两个文件了。

你还可以这样创建目录树:md a\b\c 这样就是a目录下的b目录,创建c目录。

ren

ren 是rename的简称。

ren a.txt b.txt

这样就可以转换了。

除了这样外,这时候有一些其他功能可以使用:

比如说:

ren a?.txt b.txt

这个?代表一个字符。

ren a*.txt b.txt
  • 表示多个字符。

del

del命令的用法很简单,使用 "del 文件路径" 的格式就可以了。比如,想删除D盘根目录下的test.txt,使用del d:\test.txt即可。

  但是,并不是所有的文件都可以只用del命令就可以搞定,比如具有隐藏属性、只读属性或者系统属性的文件,假如d:\test.txt具有隐藏属性,如果仅仅是 del d:\test.txt 的话,d:\test.txt会纹丝不动。如何删除它?这时候,就需要对del加上一些辅助参数了,隐藏属性是hidden,使用del /a:h,只读属性是read,使用del /a:r,系统属性是system,使用del /a:s,如果不知道文件是什么属性,那么,使用del /a即可——不过有一种情况是例外,当文件具有只读属性的时候,还得添加 del /a /f 参数,所以,如果要对不知道属性的文件进行强制删除,使用 del /a /f 语句是最保险的做法。在这里,/f 参数表示强制删除只读属性文件的意思,f取自force,也就是强制的意思。

删除文件是件十分危险的事情,稍有不慎,就可能删掉了重要的文件,所以,在执行删除操作的时候,需要小心谨慎。如果需要在删除之前进行确认的话,可以添加一个参数:/p。

当然,对于十分有把握的删除操作,并不需要逐一确认的,可以选择静默删除模式,这时候,需要使用参数:/q,也就是 quiet 的缩写形式

删除文件夹:rd

rd /s /q g:/test

第一个参数的作用是,如果这个文件夹不为空,那么也会删除。/q 是quiet的意思。就是说不会去询问你是否删除。

move

move 表示移动文件的意思。

但是:

move a.txt b.txt

这时候a文件命名为了b。实际上是先移动,然后重命名。

move 有一个重要的参数 -y;

copy

copy 和move 一样有一个-y的属性,表示copy过去直接覆盖而不是询问。

在批处理脚本中,move 默认带的是 /y 开关,不会出现重名提示而直接覆盖同名文件,和cmd窗口中的情形正好相反。

copy d:\test\test.txt d:\1.txt 这样的命令,也就是说,在指定目的路径的时候,直接指定文件名,那么,新的文件名就是源文件复制之后的名字。

copy同样有合并内容的功能。例如:copy d:\test.txt+d:\abc.txt d:\test\test.txt,那么,就把D盘根目录下的test.txt和abc.txt两个文件的内容合并为test.txt,并保存到d:\test目录下。

必须注意的是,copy只能复制文件,对于文件夹的复制,则需要另请高明,动用xcopy来复制。

如果你要查看copy的更多功能,请输入 copy /?

其他功能属性也一样。

posted @ 2020-05-06 12:09  敖毛毛  阅读(384)  评论(0编辑  收藏  举报