zoukankan      html  css  js  c++  java
  • 批处理

    1.3 学习 md  rd  ren  move 命令

    学习要点:
    1.创建文件夹:md
    2.删除文件夹:rd
    3.重命名文件(夹):ren
    4.移动文件(夹):move

    一.创建文件夹:md

    md命令用于创建文件夹,下面例子中的路径是可以缺省的,如果缺省则在当前目录下创建新文件夹;如果创建的新文件夹及其路径带有空格或特殊符号的,要用双引号括起来。

    1.创建单个文件夹
    格式:MD [路径]目录

    例1
    md d:abc
    在D盘下建立一个名为abc的文件夹。

    例2
    md abc
    这里为缺省路径,则在当前目录下创建一个名为abc的文件夹。

    例3
    md "d:my game"
    在D盘下建立一个名为my game的文件夹。
    对于新建的文件夹名称中包含有空格或是特殊符号的,一定要用双引号” “把文件夹名括起来。

    例4
    md "C:Documents and Settings456^ 789"
    在C:Documents and Settings下建立一个名为456^ 789的文件夹,由于路径中有空格,所以我们用双引号" "把路径和文件夹名一起括起来了。

    2.同时创建多个目录
    格式:md [路径]目录1 [路径]目录2 [路径]目录3……

    例5
    md abc D:gmae123 abcd
    在当前目录下建立abc和abcd两个文件,同时D:gmae下也建立一个文件夹123。


    3.创建多级目录
    格式:md [路径]目录1目录2目录3…

    假如我们要在D盘下建立文件夹abc,然后在abc中建新文件夹abcd,接着再在abcd中建文件夹abcde,有没有一个命令可以一次性搞定的呢?答案肯定的!

    例6
    md d:abcabcdabcde
    就这么一个命令就搞定了,不信?你当然可以测试一下罗,呵呵~


    思考:

      在例4中如果命令不用双引号括起来,即md C:Documents and Settings456^ 789  这样会发生什么情况呢?这个就让大家动手去测试一下了,哈哈!!

    二.删除文件夹:rd

    删除一个目录。
    RMDIR [/S] [/Q] [drive:]path
    RD [/S] [/Q] [drive:]path

        /S      除目录本身外,还将删除指定目录下的所有子目录和
                文件。用于删除目录树。
        /Q      安静模式,带 /S 删除目录树时不要求确认


    在不加任何参数时,rd命令只能删除空的文件夹。

    例1.
    rd d:123 
    rd abc
    第一个是删除D盘下的空文件夹123。第二个是删除当前目录下的空文件夹abc。


    /S  除目录本身外,还将删除指定目录下的所有子目录和文件。用于删除目录树。

    例2.
    rd /s d:123
    如果文件夹123不为空,则通过/S参数,可删除文件夹123。


    /Q  安静模式,带 /S 删除目录树时不要求确认。

    例3.
    rd /s /q d:123
    在使用/S参数时,系统会提示: d:123 是否确认(Y/N)? 此时通过/Q参数可以使其不用询问而直接删除。

    三.重命名文件(夹):ren

    重命名文件。
    RENAME [drive:][path]filename1 filename2.
    REN [drive:][path]filename1 filename2.

    filename1的路径可以省略,缺省情况下为当前目录。filename2只能是文件名,不能使用任何路径。


    1.单个文件的重命名

    例1
    ren d:123.txt 456.bat
    把123.txt 重命名为456并把后缀名修改为bat。

    例2
    ren 123.txt 456.bat
    缺省路径情况下,把当前目录下的123.txt重命名为456.bat。


    2.批量重命名

    通过*和?这两个通配符来批量重命名。*表示任意多个字符,?表示一个字符。

    例3
    ren *.bat *.txt
    把后缀名为bat的文件批量更改为txt后缀后的文件。


    ★对于通配符?比较复杂,在此就不说了,请大家多找一下相关的资料吧!
    ★当文件具有隐藏属性或系统属性的时候,ren不能直接重命名,需要把文件的隐藏或系统属性去掉方可更名,这一点大家要注意!

    四.移动文件(夹):move

    移动文件并重命名文件和目录。

    要移动至少一个文件:
    MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination

    要重命名一个目录:
    MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2

      [drive:][path]filename1 指定您想移动的文件位置和名称。
      destination             指定文件的新位置。目标可包含一个驱动器号
                              和冒号、一个目录名或组合。如果只移动一个文件
                              并在移动时将其重命名,您还可以包括文件名。
      [drive:][path]dirname1  指定要重命名的目录。
      dirname2                指定目录的新名称。

      /Y                      取消确认改写一个现有目标文件的提示。
      /-Y                     对确认改写一个现有目标文件发出提示。


    1.移动文件(夹)
    基本格式:MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination

    [drive:][path]filename1[,...]
    想要移动的文件(夹)可以使用相对路径,也可以使用绝对路径,缺省路径情况下默认为当前目录。

    Destination 只能是目录路径, 可以使用相对路径,也可以使用绝对路径,缺省路径情况下默认为当前目录。

    例1
    move d:abc d:abcd
    如果把文件夹abc移到文件夹abcd内。

    例2
    move 123.txt abc
    把当前目录下的123.txt移动到当前文件夹abc内。这里都使用了相对路径,缺省路径情况下默认为当前目录。

    例3
    move 123.txt e:abc
    把当前目录下的123.txt移动到e:abc目录下。


    2.重命名文件(夹)

    例4
    move d:abc d:abcd
    这里要注意一下,如果目标文件夹abcd不存在,则把abc移到d:下,并把自身名称更改为abcd。
    利用这一特性,move命令具备重命名功能。

    例5
    move d:123.txt d:abc456.txt
    如果 456.txt存在,系统将会提示你:改写 D:456.txt 吗? (Yes/No/All): 
    当你输入Y后则123.txt会覆盖456.txt。如果456.txt不存在,则把123.txt移到d:abc目录下,并重命名为456.txt。

    例6
    move /y 123.txt 456.txt
    如果123.txt和456.txt都存在,通过/y参数后,系统不会提示你,而直接把123.txt覆盖456.txt。

    例7
    move 123.txt e:abc456.txt
    对于跨区移动,如果456.txt存在会提示:文件存在。命令不会执行;如果456.txt不存在,则把123.txt移到e:abc目录下,并重命名为456.txt。


    ★MOVE命令可以跨分区移动文件,却不可以跨分区移动文件夹。
    ★对于跨分区移动文件时,如果目标位置存在和将要移动的文件同名时,系统会提示:“文件存在” 最后,命令将不会执行。
    ★对于隐藏或系统属性的文件,只有把它们的属性去除后,move命令才会执行。


    我们还是来总结一下:

    对于move A B这样的模式

    1、如果A、B同为文件夹名,
       ①如果B存在,则把A移动到B目录下。(如例1);
       ②如果B不存在,则把A移动到B所在的目录下,同时重命名为B。(如例4)。

    2、如果A为文件名,B为文件夹名,
      ① 将把A移动到B目录下。(如例2,例3);
       ② 如果B文件夹内有和A文件同名的:
          I A和B为同一分区,则提示:是否覆盖/不覆盖/全部覆盖?
          II A和B为不同分区,则提示:文件存在。不做任何操作!

    3、如果A、B同为文件名,
       ①A和B为同一分区,如果B存在,则系统会提示你是否将把A重命名为B;如果B不存在就把A移动到B所在的目录下的同时,重命名 为B。(如例5);
       ②A和B为不同分区,如果B存在,则命令不执行;如果B不存在,则把A移动到B所在的目录下并重命名为B。(如例 7)。

  • 相关阅读:
    centos安装composer
    fmt.Printf()
    php进程,线程,异步
    php异步处理
    php安装swoole扩展
    冒泡排序
    快速排序
    php的foreach指针
    无密钥登陆
    ubuntu18.04切换阿里云源
  • 原文地址:https://www.cnblogs.com/oo_o/p/7373455.html
Copyright © 2011-2022 走看看