bat批处理判断文件夹是否存在并创建文件夹

转载 2016年11月16日 15:42:48
以下批处理在Xp及Windows Server2008 R2上测试可用
[plain] view plain copy
 print?
  1. @echo off  
  2. echo ****************************************  
  3. echo 自动创建文件夹(存放备份文件和备份脚本)  
  4. echo ****************************************  
  5.   
  6. set Pan=d:\  
  7. set AFolder=MIS\  
  8. set BFolder=OracleDBAutoBackup\  
  9. set C1Folder=BackupTools  
  10. set C2Folder=AutoBakFiles  
  11. set C3Folder=AutoBakHistoryFiles  
  12. set C4Folder=AutoBakBatRunLogs  
  13.   
  14.   
  15.   
  16. echo 本批处理准备创建以下文件夹  
  17. echo    1.存放备份的批处理脚本    %Pan%%AFolder%%BFolder%%C1Folder%  
  18. echo    2.存放备份文件        %Pan%%AFolder%%BFolder%%C2Folder%  
  19. echo    3.存放备份历史文件  %Pan%%AFolder%%BFolder%%C3Folder%  
  20. echo    4.存放备份脚本执行日志    %Pan%%AFolder%%BFolder%%C4Folder%  
  21. echo .  
  22. echo 开始执行-----------------------  
  23.   
  24. if exist %Pan% (  
  25.   
  26.     if exist %Pan%%AFolder% (         
  27.         rem 目录d:\<span style="font-family: Arial, Helvetica, sans-serif;">MIS</span>已存在,无需创建  
  28.         echo 目录%Pan%%AFolder%已存在,无需创建  
  29.     ) else (  
  30.         rem 创建d:\MIS  
  31.         echo 创建%Pan%%AFolder%         
  32.         md %Pan%%AFolder%  
  33.     )  
  34.   
  35.     if exist %Pan%%AFolder%%BFolder% (  
  36.         rem 目录d:\MIS\OracleDBAutoBackup已存在,无需创建  
  37.         echo 目录%Pan%%AFolder%%BFolder%已存在无需创建         
  38.     ) else (  
  39.         rem 创建d:\MIS\OracleDBAutoBackup   
  40.         echo 创建%Pan%%AFolder%%BFolder%  
  41.         md %Pan%%AFolder%%BFolder%  
  42.     )  
  43.   
  44.     if exist %Pan%%AFolder%%BFolder%%C1Folder% (  
  45.         rem 目录d:\MIS\OracleDBAutoBackup\BackupTools已存在,无需创建  
  46.         echo 目录%Pan%%AFolder%%BFolder%%C1Folder%已存在,无需创建  
  47.     ) else (  
  48.         rem 创建d:\MIS\OracleDBAutoBackup\BackupTools  
  49.         echo 创建%Pan%%AFolder%%BFolder%%C1Folder%  
  50.         md %Pan%%AFolder%%BFolder%%C1Folder%  
  51.     )  
  52.   
  53.     if exist %Pan%%AFolder%%BFolder%%C2Folder% (  
  54.         rem 目录d:\MIS\OracleDBAutoBackup\AutoBakFiles已存在,无需创建  
  55.         echo 目录%Pan%%AFolder%%BFolder%%C2Folder%已存在,无需创建  
  56.     ) else (  
  57.         rem 创建d:\MIS\OracleDBAutoBackup\AutoBakFiles  
  58.         echo 创建%Pan%%AFolder%%BFolder%%C2Folder%  
  59.         md %Pan%%AFolder%%BFolder%%C2Folder%  
  60.     )  
  61.   
  62.     if exist %Pan%%AFolder%%BFolder%%C3Folder% (  
  63.         rem 目录d:\MIS\OracleDBAutoBackup\AutoBakHistoryFiles已存在,无需创建  
  64.         echo 目录%Pan%%AFolder%%BFolder%%C3Folder%已存在,无需创建  
  65.     ) else (  
  66.         rem 创建d:\MIS\OracleDBAutoBackup\AutoBakHistoryFiles  
  67.         echo 创建%Pan%%AFolder%%BFolder%%C3Folder%  
  68.         md %Pan%%AFolder%%BFolder%%C3Folder%  
  69.     )  
  70.   
  71.     if exist %Pan%%AFolder%%BFolder%%C4Folder% (  
  72.         rem 目录d:\MIS\OracleDBAutoBackup\AutoBakBatRunLogs已存在,无需创建  
  73.         echo 目录%Pan%%AFolder%%BFolder%%C4Folder%已存在,无需创建  
  74.     ) else (  
  75.         rem 创建d:\MIS\OracleDBAutoBackup\AutoBakBatRunLogs  
  76.         echo 创建%Pan%%AFolder%%BFolder%%C4Folder%  
  77.         md %Pan%%AFolder%%BFolder%%C4Folder%  
  78.     )  
  79.   
  80. ) else (  
  81.     echo !!  
  82.     echo !!执行失败,当前系统上不存在%Pan%盘  
  83.     echo !!  
  84. )  
  85. echo .  
  86. echo 已执行完毕(退出请按任意键或直接关闭窗体)-----------------------  
  87. echo .  
  88. pause  

批处理命令(rar.bat):

c:
cd/
cd C:/Program Files/WinRAR
winrar a -ep1 -o+ -ppassword -inul -r -ibck C:/RarFile E:/BigFile


其中,a是压缩命令,-ep1 -o+ -p -inul -r -ibck是参数


ep1:排除基准文件夹,不然压缩包会包含待压缩文件夹所在的完整路径

o+:覆盖已经存在的文件

p:密码,后面红色的部分就是密码,紧贴这个参数P,看起来有点怪

inul:禁止出错信息

r:连同子文件夹操作

ibck:后台模式运行

C:\RarFile 压缩文件

E:\BigFile 等待压缩的源文件


更多帮助信息,可以打开WINRAR,然后看它的帮助。


将以上批处理命令写到一个批处理文件里,然后用任务计划来定期运行这个批处理文件,就可以定期压缩某些文件鸟。比如说,夜深人静的时候,机器自动压缩庞大的数据库备份文件。


相关文章推荐

批处理判断文件夹是否存在

批处理判断文件夹是否存在本文转载自:批处理判断文件夹是否存在 - Virus-BeautyCode - 博客园先看一段bat命令@echo off @title 批处理判断文件夹是否存在if exis...
  • yyinhai
  • yyinhai
  • 2016年11月17日 21:25
  • 378

bat批处理判断文件夹是否存在并创建文件夹

bat批处理判断文件夹是否存在并创建文件夹

批处理bat实现创建、复制、删除文件及文件夹

1 建bat文件自动执行复制,删除命令。  例1:以下是复制cd.dll文件至windows\system32的bat文件内容:          copy cd.dll %windir%\sys...

bat脚本--大量的文件夹创建

如果说,我们要创建的文件夹的名字是有一定规律的话,我们就可以采取更为简单的方法。 例如:我们现在要创建100个文件夹,怎么办?不要担心,我们一行代码搞定。 @echo off for /l %%i...

[Dos] 检查文件是否存在并进行压缩,以及过期删除

检查服务器Server01上面某个目录中, 是否存在 OFD_99_NN_yyyymmdd_53.txt, 存在则压缩。  如果是21点以前YYYYMMDD为昨天的日期   @echo off...

批处理之判断文件是否存在

@echo off rem 判断文件是否存在 if exist %1 ( echo 文件%1存在 ) else ( echo 文件%1不存在 ) pause...

批处理中创建文件夹:md

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

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

利用批处理命令生成文件夹及其它批处理命令

    md abc        在当前文件夹下创建名称为abc的文件夹md E:/a/abc    在E:/a文件夹内创建名称为abc的文件夹,如果E:/a文件夹不存在,则会被自动创建其它批处理...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:bat批处理判断文件夹是否存在并创建文件夹
举报原因:
原因补充:

(最多只允许输入30个字)