【问题标题】:Batch file creating folders in all folders of current directory批处理文件在当前目录的所有文件夹中创建文件夹
【发布时间】:2013-06-07 14:33:21
【问题描述】:

我正在尝试创建一个简单的批处理文件,该文件在某个目录中运行并转到“文件夹名数据我的文档”并创建一个名为“outlook 存档”的文件夹

这就是我现在所拥有的......但我不断收到错误。

FOR /D %% IN ("C:\Users\nhajjar.AMERICAS\Desktop\test*\Data\My documents\") 做(MD 数据)

有什么想法吗?我究竟做错了什么?

【问题讨论】:

  • 认为你需要在 %% 之后,'IN' 之前的参数
  • 但这是一个通配符。我见过的所有示例都指字母表中的特定字母,但我真的想要所有文件夹,无论名称是什么
  • 我不相信它是通配符。该参数是分配给您执行命令的各种增量的参数。将其留空意味着 for 循环不能将每个增量分配给执行命令的任何内容。顺便说一句,我不知道 IN (...) 部分是否会遍历文件夹,所以我没有做出正式的回答。
  • 知道该放什么吗?

标签: windows batch-file command directory


【解决方案1】:

完全重写答案。这将只在批处理文件所在位置的 Data\My Documents\ 子文件夹中创建一个“Outlook Archive”文件夹。

for /f "delims=" %%i in ('dir /ad/s/b') do if EXIST "%%i\Data\My Documents\" MKDIR "%%i\Data\My Documents\Outlook Archive\"
pause

感谢here

【讨论】:

  • 这只在目录 test 中创建了该文件夹结构(这对我有用)。但是,我要做的是检查“test”目录中的每个文件夹,该文件夹结构(如果它不存在)
  • 完全重写了答案。当我重新阅读问题(跳过标题)时,我忘记了您需要在所有子文件夹中创建一个文件夹。
  • hmmmm 这更接近我想要的,但并不完全在那里。它只是在所有子目录中创建了一个“oulook Archive”文件夹,无论是否存在“数据和”我的文档“。它只需要在 Path\Data\My Documents\ 中创建,如果它还没有的话。有意义吗?
  • 也许我可以给你举个例子。三个文件夹:A、B、C 这些文件夹中的每一个都有许多子文件夹,但肯定有一个 Data 文件夹(顺便说一句,它可以是大写或小写 - 不确定这是否重要 - 我只是想避免覆盖,因为这不是我的意思试图做)。在每个数据文件夹中,都有诸如“桌面”“收藏夹”等文件夹,但我们正在寻找我的文档(大写或小写,我不想覆盖文件夹)。在那里,如果有存档的 Oulook 文件夹,则什么也不做。否则,创建文件夹。
  • 我跟着。我认为在所有子文件夹中创建该文件夹很奇怪 - 尝试新的编辑。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-10-13
  • 1970-01-01
  • 1970-01-01
  • 2015-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多