【问题标题】:cmd exclude subfolders when doing @move "%f"cmd 在执行 @move "%f" 时排除子文件夹
【发布时间】:2018-09-02 03:24:28
【问题描述】:

我正在使用此代码将 pdf 文件从文件夹“PDF”移动到“PDF\old”

C:\WINDOWS\system32\cmd.exe /c "for /r c:\Users\ADMIN\Desktop\PDF\ %f in (*.pdf) do @move "%f" c:\Users\ADMIN\Desktop\PDF\old"

但是,当子文件夹(“PDF\sub”)包含更多 PDF 时,它们也会被移动到文件夹“PDF\old” - 可以限制命令以排除任何子文件夹吗?

非常感谢

【问题讨论】:

  • 查看robocopy 及其选项/MOV/XD...

标签: cmd move


【解决方案1】:

我觉得你做的太复杂了。

将所有 pdf 文件移动到另一个文件夹 - 最简单的方法:

move "c:\Users\ADMIN\Desktop\PDF\*.pdf" "c:\Users\ADMIN\Desktop\PDF\old"

【讨论】:

  • 当然可以,为什么我要这么做?谢谢:-)
  • @teaspoon 欢迎您。那么循环的重点是在其中或其中的子文件夹和/或文件中执行某些操作。对于像您这样的简单操作,它是矫枉过正的。对于此类任务,最好使用为此创建的命令行命令。
【解决方案2】:

我认为这就是您所说的排除子文件夹的意思?

for /f "delims=*" %F in ('dir /b "C:\users\admin\desktop\pdf\*.pdf"') do @move "%F" "c:\users\admin\desktop\pdf\old"

另外,this 对相关问题的回答可能会引起您的兴趣。

【讨论】:

  • 谢谢,这也可以。有趣的是,它是区分大小写的。另外,由于一些错误,当我在 Total Commander(活动窗口)的目标文件夹中时,文件不会复制...
猜你喜欢
  • 1970-01-01
  • 2019-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-15
相关资源
最近更新 更多