如何在带有批处理文件的文件夹中循环

伯努瓦·米诺

我需要对批处理文件做些什么....

我需要将一个文件夹复制到另一个文件夹,但是...

如果新文件夹存在,我需要验证新文件夹中的文件是否存在,然后我需要在此文件末尾使用«.old»重命名该文件,然后再复制新文件。我在 Java、php 等方面有丰富的编程经验,但不是真正的批处理文件......

我正在使用 java/php 的语法来解释我的问题....

set folderOrigin=d:\test1
set folderFinal=d:\test5 
if EXIST %folderFinal% (
  for (fileOrigin : folderOrigin){
      variableNamefileOrigin = fileOrigin
      for (fileFinal : folderFinal){
          variableNamefileFinal = fileFinal            
          if (variableNamefileOrigin == variableNamefileFinal){
              newvariable = variableNamefileFinal + ".old"
              ren variableNamefileFinal newvariable
              xcopy /s /q %folderOrigin%+%variableNamefileOrigin% 
              %folderFinal%+%variableNamefileFinal% 
          }
      }
  }
) else (
    xcopy /s /q %dossierOrigine% %dossierDestinataire%
)
pause

谢谢大家!

亚历克斯

假设源目录(“文件夹”是 GUI 中的工件;文件系统中的结构是“目录”)是%sourceFolder%,目标目录是%finalFolder%并假设您只需要复制文件(而不是整个子树):

  1. 要循环浏览文件,%sourceFolder%请使用for循环:

    for %%f in ("%sourceFolder%\*") do call :copyOneFile "%%~f"
    exit /b
    
  2. 在子程序中,:copyOneFile您将当前文件设为%1. 要检查它是否存在,%finalFolder%请使用if exist,如果是,则重命名它,但在检查.old文件是否已经存在之前不要

    :copyOneFile
    
    if exist "%finalFolder%\%~nx1" (
      if exist "%finalFolder\%~n1.old" del "%finalFolder\%~n1.old"
      ren "%finalFolder\%~nx1" "%~n1.old"
    )
    
  3. 现在您可以将文件从源文件夹复制到目标文件夹:

    copy "%~1" "%finalFolder%
    

要了解结构%~nx1等,请使用for /?. 请注意,第二个参数ren必须只有文件名,不允许使用路径。

如果您需要复制整个子树,则:

  • 复制文件后,重做for /d以获取目录。

  • 使用适当的命令而不是delcopy

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在整个文件夹中运行带有perl脚本的批处理文件

来自分类Dev

如何使用批处理文件在系统文件夹中创建批处理文件

来自分类Dev

如何在批处理文件中动态创建文件夹-CMD

来自分类Dev

循环/批处理文件,用于从文件夹中的.m4a文件提取所有.aac

来自分类Dev

批处理文件以列出带有父目录的文件和文件夹

来自分类Dev

如何清除而不删除所有子文件夹中的所有文件(批处理文件除外)?

来自分类Dev

如何在批处理文件中解析带有特殊定界符的文件?

来自分类Dev

如何在批处理文件中批量重命名带有多个点的文件?

来自分类Dev

批处理文件:如何将所有.doc文件备份到文件夹

来自分类Dev

批处理文件,用于获取文件夹中的所有文件名

来自分类Dev

Windows批处理文件:转换子文件夹中的所有文件

来自分类Dev

如何选择最新文件以批处理文件存储在文件夹中

来自分类Dev

如何获取文件夹中每个文件的名称并应用于批处理文件?

来自分类Dev

如何使用批处理文件在文件夹中运行exe文件

来自分类Dev

如何使用批处理文件更改每个子文件夹中的每个文件内容?

来自分类Dev

如何选择最新文件以批处理文件存储在文件夹中

来自分类Dev

批处理文件-如何读取一个文件夹中的多个.txt文件?

来自分类Dev

如何通过批处理文件列出所有具有大小的文件夹

来自分类Dev

如何使用批处理文件向当前文件夹和子文件夹中的所有文件添加前缀

来自分类Dev

在批处理文件中,如何查找没有目录其余部分的特定文件夹?

来自分类Dev

如何使用批处理文件删除2个特定文件夹中的所有内容?

来自分类Dev

Windows批处理-匹配文件夹名称中带有点(。)的文件夹

来自分类Dev

批处理文件,删除目录中除最新文件夹外的所有文件夹

来自分类Dev

查找批处理文件夹

来自分类Dev

如何使用批处理文件查找特定文件夹今天是否有修改

来自分类Dev

从批处理文件的路径中获取文件夹名称。没有解决

来自分类Dev

调用文件夹中的所有批处理文件

来自分类Dev

批处理文件以执行文件夹中的所有.exe

来自分类Dev

在批处理文件的所有子文件夹中运行命令

Related 相关文章

  1. 1

    在整个文件夹中运行带有perl脚本的批处理文件

  2. 2

    如何使用批处理文件在系统文件夹中创建批处理文件

  3. 3

    如何在批处理文件中动态创建文件夹-CMD

  4. 4

    循环/批处理文件,用于从文件夹中的.m4a文件提取所有.aac

  5. 5

    批处理文件以列出带有父目录的文件和文件夹

  6. 6

    如何清除而不删除所有子文件夹中的所有文件(批处理文件除外)?

  7. 7

    如何在批处理文件中解析带有特殊定界符的文件?

  8. 8

    如何在批处理文件中批量重命名带有多个点的文件?

  9. 9

    批处理文件:如何将所有.doc文件备份到文件夹

  10. 10

    批处理文件,用于获取文件夹中的所有文件名

  11. 11

    Windows批处理文件:转换子文件夹中的所有文件

  12. 12

    如何选择最新文件以批处理文件存储在文件夹中

  13. 13

    如何获取文件夹中每个文件的名称并应用于批处理文件?

  14. 14

    如何使用批处理文件在文件夹中运行exe文件

  15. 15

    如何使用批处理文件更改每个子文件夹中的每个文件内容?

  16. 16

    如何选择最新文件以批处理文件存储在文件夹中

  17. 17

    批处理文件-如何读取一个文件夹中的多个.txt文件?

  18. 18

    如何通过批处理文件列出所有具有大小的文件夹

  19. 19

    如何使用批处理文件向当前文件夹和子文件夹中的所有文件添加前缀

  20. 20

    在批处理文件中,如何查找没有目录其余部分的特定文件夹?

  21. 21

    如何使用批处理文件删除2个特定文件夹中的所有内容?

  22. 22

    Windows批处理-匹配文件夹名称中带有点(。)的文件夹

  23. 23

    批处理文件,删除目录中除最新文件夹外的所有文件夹

  24. 24

    查找批处理文件夹

  25. 25

    如何使用批处理文件查找特定文件夹今天是否有修改

  26. 26

    从批处理文件的路径中获取文件夹名称。没有解决

  27. 27

    调用文件夹中的所有批处理文件

  28. 28

    批处理文件以执行文件夹中的所有.exe

  29. 29

    在批处理文件的所有子文件夹中运行命令

热门标签

归档