【问题标题】:powershell script or bash script to copy subfolders [closed]用于复制子文件夹的 powershell 脚本或 bash 脚本 [关闭]
【发布时间】:2014-04-15 09:28:39
【问题描述】:

有人可以帮助我使用批处理脚本或 powershell 脚本吗?我是编程中的菜鸟。我有几个文件夹和子文件夹以及子子文件夹。只有主文件夹“Folder1”的名称不同。所有其他子文件夹都具有相同的名称。子子文件夹也不同。所有文件夹的结构是这样的:

Folder1
  -folderAAA
  -folderBBB
     -folderBBB111
     -folderBBB222
  -folderCCC
Folder2
  -folderAAA
  -folderBBB
     -folderBBB111333
     -folderBBB222333
  -folderCCC
.......

我有很多主文件夹,例如“Folder1 和 Folder2” 我需要一个脚本来研究主文件夹“Folder1,folder2 ...”,并在找到“folderBBB”进入该文件夹并将文件夹复制到不同的位置时,例如文件夹“Uploads”之类的。

【问题讨论】:

  • 请说明您的问题并向我们展示您目前所遇到的问题。
  • 描述您的要求并要求某人为您编写代码或解释如何编写代码的问题对于 Stack Overflow 来说是题外话。请确定有关编程的特定问题或问题。包括尝试的解决方案、结果与预期结果有何不同的解释,以及您收到的任何错误消息。请阅读About 页面和this advice on asking good questions
  • 您好,感谢您的回复。如果可能的话,我需要有人来编写脚本。我很确定,这个脚本会帮助很多人。我有一个脚本,它只复制扩展名为“.exe”或你想要的文件。
  • $docFiles = Get-ChildItem -Path "C:\Users\aaa\Desktop\1" -Recurse | Where-Object {$_.Attributes.ToString() -notlike "Directory" -and ($_.Name -like "*.exe")} |排序对象-唯一; $doc文件 | ForEach-Object { Copy-Item -Path $_.fullname -Destination "C:\Users\aaa\Desktop\222" };

标签: bash batch-file powershell


【解决方案1】:

从这里开始:

How do I get only directories using Get-ChildItem?

然后继续

http://technet.microsoft.com/en-us/library/ee156818.aspx

并且您应该能够弄清楚如何列出目录以及如何复制内容。

如果您的脚本几乎可以运行,但仍有问题,请发布更详细的说明。

【讨论】:

  • $docFiles = Get-ChildItem -Path "C:\Users\aaa\Desktop\333" -Recurse -include "folderBBB" |其中 {$_.Attributes -eq '目录'} ; $doc文件 | ForEach-Object { Copy-Item -Path $_.fullname -Destination "C:\Users\aaa\Desktop\4444" };
  • 这是我的脚本,和之前的差不多。我只是更改了一些设置,但它不起作用。该脚本仅创建了一个新文件夹“folderBBB”,该文件夹为空。我需要该文件夹充满所有子文件夹。