[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[一日一教学](9)创建文件夹:md

[一日一教学]批处理系列帖子索引 http://www.bathome.net/thread-2576-1-1.html

标题:一日一教学系列9_创建文件夹:md
首发地址:http://bbs.bathome.net/viewthread.php?tid=3319
首发日期:2009.2.13
更新日期:无

上一篇:重命名文件(夹):ren  http://bbs.bathome.net/viewthread.php?tid=3318
下一篇:删除文件夹:rd http://bbs.bathome.net/viewthread.php?tid=3340

  创建文件夹使用的是md命令,它的另一个写法为mkdir(由MakeDirectory演变而来),格式为:md 文件夹名,其中,文件夹名可以使用带路径的格式。例如:md d:\test,也可以用 md test 在当前路径下建立test文件夹。

  如果要创建的文件夹带有空格或&,需要用引号把文件夹名括起来,例如:md "test abc"、md "abc&xyz"。

  如果不使用引号,又会带来什么后果呢?

  测试的结果是:

  1、如果文件夹名带空格,那么,md test abc 语句会在当前目录下创建test和abc这两个文件夹;利用这个特点,我们有时候可以收到化繁为简的奇效:如果要创建abc def xyz这三个文件夹,直接使用 md abc def xyz 就行了,而无需连写三条md语句。当然,md abc;def;xyz或者md abc,def,xyz 这样的写法也是可以的。
  2、如果文件夹名中含有&,那么,md abc&xyz 会创建abc这个文件夹,并提示说:'xyz'不是内部或外部命令,也不是可运行的程序或批处理文件,这是因为,&是复合语句的连接符号,它把前后两部分视为两条子语句了。

  忠告:如果文件夹名含有特殊符号,请不要忘记使用双引号!

  md还有一个比较方便的功能:创建中级目录。也就是说,md a\b\c这样的命令,可以在当前目录下建立文件夹a,然后,在a下建立文件夹b,b之下再建立文件夹c,一气呵成,而无需先md a之后,再cd a,然后md b,再cd b,接着cd b,然后md c。
2

评分人数

尺有所短寸有所长,学好批处理没商量;
考虑问题复杂化,解决问题简洁化。

心在天山,身老沧州。

总结下,如下

  1. md  abdc dlasasd   asdlfjdasl     
复制代码

分别建立三个文件夹

md  a\b\c\d\e\f\g\g\i

意义不一样了。就是这样了

TOP

跟两个创建9级随机目录的代码,加深大家的理解:
第一个是一级一级建立的,也就是按先建a再在a中建b再在b中建c...的方式来建立
  1. @echo off&setlocal enabledelayedexpansion
  2. set "str=abcdefghijklmnopqrstuvwxyz0123456789"
  3. for /l %%a in (1,1,9) do (
  4.     for /l %%b in (1,1,9) do (
  5.         set /a a=!random!%%36
  6.         call,set "var=!var!%%str:~!a!,1%%"
  7.     )
  8.     md !var!&cd !var!&set "var="
  9. )
复制代码
第二个是一次性创建,也就是按一次建立a\b\c\d\e\...这样的方式来建立
  1. @echo off&setlocal enabledelayedexpansion
  2. set "str=abcdefghijklmnopqrstuvwxyz0123456789"
  3. for /l %%a in (1,1,9) do (
  4.     for /l %%b in (1,1,9) do (
  5.         set /a a=!random!%%36
  6.         call,set "var=!var!%%str:~!a!,1%%"
  7.     )
  8.     set "var=!var!\"
  9. )
  10. md %var:~,-1%
复制代码

[ 本帖最后由 batman 于 2009-2-13 01:29 编辑 ]
***共同提高***

TOP

md还有一个比较方便的功能:创建中级目录。也就是说,md a\b\c这样的命令

依稀记得这个特性是和操作系统有关的,手上有2000/98系统的朋友可以帮忙测试一下这个命令。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

问一下,我有个映射盘,里面有病毒,不知道名字,他的特点是两个文件 .vbs和autorun.inf,我用p删除并MD建立了带系统几种具有保护属性的autorun.inf文件夹,且在里面也建立了带点的文件夹,但这个病毒猖獗的给替换了,因此请教MD的厉害,可否让病毒能安静下来。难道这病毒还带删除autorun.inf功能吗
目的,学习批处理

TOP

  自从以点号结尾的文件夹的秘密被公开之后,很多病毒都已经开始防着这一手,能删除以点号结尾的文件夹的病毒渐渐多起来了。病毒与反病毒始终是道高一尺魔高一丈地此消彼长着,如果你经常碰到安全方面的问题,就应该多采取一些安防措施,而不应该仅仅依靠有限的几种手段。
尺有所短寸有所长,学好批处理没商量;
考虑问题复杂化,解决问题简洁化。

心在天山,身老沧州。

TOP

回复 5楼 的帖子

可以试试用cacls命令取消文件夹/文件的所有读写权限
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

md可以创建多级目录,是不是只在2000\xp\2003及其后的操作系统中才能用啊
活到老,学到老;终身学习!!

TOP

可以在后面多加几个点如test.....\这样就不能被删了

TOP

终于有个看懂了学会了的命令了

TOP

回复 8楼 的帖子

以前的操作系统是不支持这样做的
不过现在还使用98以前的系统的人恐怕不多了吧
呵呵
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 9楼 的帖子

能建就能删,参考:批处理中畸形文件夹和畸形文件的创建、访问、删除
http://bbs.bathome.net/thread-3885-1-1.html
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

md命令的另一种写法

md命令的另一种写法是 md\a\b\c

TOP

遇到个怪怪的问题!
      当  E:\>md abc efg 时候,会创建abc和efg两个文件夹
但是,当  E:\>md E:\abc efg时候,只有abc一个文件夹阿!

TOP

看是简单的md命令,没想到还有这么多技巧!

TOP

返回列表