在命令行上运行“ dir / b / s”时如何使用结果创建新目录

用户名

我希望这在Windows批处理中是可能的:)

根据目录结构中的目录列表,是否可以获取该列表的结果并在目录结构之前/之后/中间附加目录名称以创建新目录?

例如,如果我dir /b /s向特定目录发出命令,它将按以下方式列出该目录中的目录:

E:\ftproot\MiddlewareIO>dir /b /s

E:\ftproot\MiddlewareIO\Benefits
E:\ftproot\MiddlewareIO\Blackboard
E:\ftproot\MiddlewareIO\Data-Warehouse
E:\ftproot\MiddlewareIO\EmplWorkerDemo
E:\ftproot\MiddlewareIO\IDM
E:\ftproot\MiddlewareIO\PayrollData
E:\ftproot\MiddlewareIO\PayrollGLData

我想从上面的目录列表中获取结果,并在目录结构的中间附加目录名称“ Archive”,这将创建此新的目录结构。结果结构如下:

E:\ftproot\MiddlewareIO\Archive\Benefits
E:\ftproot\MiddlewareIO\Archive\Blackboard
E:\ftproot\MiddlewareIO\Archive\Data-Warehouse
E:\ftproot\MiddlewareIO\Archive\EmplWorkerDemo
E:\ftproot\MiddlewareIO\Archive\IDM
E:\ftproot\MiddlewareIO\Archive\PayrollData
E:\ftproot\MiddlewareIO\Archive\PayrollGLData

此列表可能会增加,手动更新批处理文件可能真的很繁琐。

控制台盒
@echo off

pushd E:\ftproot\MiddlewareIO

mkdir Archive

for /f "delims=\ tokens=1,2,3*" %%a in ('dir . /ad/s/b') do (
    mkdir "Archive\%%~d"
)

popd

您还可以在创建目录之前检查目录是否存在:

@echo off

pushd E:\ftproot\MiddlewareIO

if not exist Archive\. mkdir Archive

for /f "delims=\ tokens=1,2,3*" %%a in ('dir . /ad/s/b') do (
    if not exist "Archive\%%~d\." mkdir "Archive\%%~d"
)

popd

新建议:过滤器存档:

@echo off

pushd E:\ftproot\MiddlewareIO

if not exist Archive\. mkdir Archive

for /f "delims=\ tokens=1,2,3*" %%a in ('dir /ad /s /b ^| find /v "\Archive"') do (
    if not exist "Archive\%%~d\." mkdir "Archive\%%~d"
)

popd

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

什么是Windows命令行“ dir / s / b”的Unix(QNX)等效项

来自分类Dev

在Windows命令行上使用DIR命令排除特定扩展名的文件

来自分类Dev

Android-在命令行上运行测试的目录

来自分类Dev

如何从Windows上的命令行运行.js文件?

来自分类Dev

Dart:如何设置前导文件以在命令行上运行?

来自分类Dev

如何在命令行上运行 AppImage

来自分类Dev

如何在 Mac 命令行上运行 docker?

来自分类Dev

在 MATLAB 上使用 zsh 通过别名运行命令行

来自分类Dev

Windows命令行中的DIR命令

来自分类Dev

python:使用文件B中文件A的命令行参数

来自分类Dev

从命令行打开新终端并在Mac OS X上运行命令?

来自分类Dev

从命令行运行mfp时在Mac上找不到命令错误

来自分类Dev

程序在Eclipse中运行良好,但在命令行上运行Jar时抛出错误

来自分类Dev

使用matlab运行命令行

来自分类Dev

在命令行上运行Apache Ignite时无法创建Ignite组件

来自分类Dev

如何使用在UNIX上运行的TFS命令行客户端创建新的Windows工作区

来自分类Dev

如何使用在UNIX上运行的TFS命令行客户端创建新的Windows工作区

来自分类Dev

WSL:如何从WSL上的linux系统的命令行在Windows上运行浏览器

来自分类Dev

在Windows命令行上搜索目录

来自分类Dev

如何在命令行中从目录B中的目录A中删除匹配的文件?

来自分类Dev

在命令行上运行scala jar时如何指定其他主类?

来自分类Dev

如何在批处理文件中不使用dir / b / s命令显示文件路径

来自分类Dev

在Linux命令行上创建UUID

来自分类Dev

如何使用命令行工具在 Ambari / Zeplin 上运行 sql 查询?

来自分类Dev

在bash命令行上如何*解释?

来自分类Dev

在OSX的命令行上使用Dropbox

来自分类Dev

在命令行上使用邮件

来自分类Dev

在Windows命令行上运行在IntelliJ中创建的Java程序

来自分类Dev

在命令行上运行cmd时,npm run cmd失败

Related 相关文章

  1. 1

    什么是Windows命令行“ dir / s / b”的Unix(QNX)等效项

  2. 2

    在Windows命令行上使用DIR命令排除特定扩展名的文件

  3. 3

    Android-在命令行上运行测试的目录

  4. 4

    如何从Windows上的命令行运行.js文件?

  5. 5

    Dart:如何设置前导文件以在命令行上运行?

  6. 6

    如何在命令行上运行 AppImage

  7. 7

    如何在 Mac 命令行上运行 docker?

  8. 8

    在 MATLAB 上使用 zsh 通过别名运行命令行

  9. 9

    Windows命令行中的DIR命令

  10. 10

    python:使用文件B中文件A的命令行参数

  11. 11

    从命令行打开新终端并在Mac OS X上运行命令?

  12. 12

    从命令行运行mfp时在Mac上找不到命令错误

  13. 13

    程序在Eclipse中运行良好,但在命令行上运行Jar时抛出错误

  14. 14

    使用matlab运行命令行

  15. 15

    在命令行上运行Apache Ignite时无法创建Ignite组件

  16. 16

    如何使用在UNIX上运行的TFS命令行客户端创建新的Windows工作区

  17. 17

    如何使用在UNIX上运行的TFS命令行客户端创建新的Windows工作区

  18. 18

    WSL:如何从WSL上的linux系统的命令行在Windows上运行浏览器

  19. 19

    在Windows命令行上搜索目录

  20. 20

    如何在命令行中从目录B中的目录A中删除匹配的文件?

  21. 21

    在命令行上运行scala jar时如何指定其他主类?

  22. 22

    如何在批处理文件中不使用dir / b / s命令显示文件路径

  23. 23

    在Linux命令行上创建UUID

  24. 24

    如何使用命令行工具在 Ambari / Zeplin 上运行 sql 查询?

  25. 25

    在bash命令行上如何*解释?

  26. 26

    在OSX的命令行上使用Dropbox

  27. 27

    在命令行上使用邮件

  28. 28

    在Windows命令行上运行在IntelliJ中创建的Java程序

  29. 29

    在命令行上运行cmd时,npm run cmd失败

热门标签

归档