我为这篇文章的幼稚道歉,请原谅我的新。
我有大约20,000个网络文件要过滤,并将某些文件复制到本地驱动器。
文件列表要求:
- 各种类型的Excel文件(.xls、.xlsx、.xlsm)
- 仅限2022年4月1日之后修改的文件
- 仅限文件名中包含“2022”的文件
如果文件符合这些要求,则:
- 将文件复制到本地文件夹(原始文件夹路径结构无关紧要,所有文件都可以放在一个文件夹中)
- 将原始路径和文件名沿着lastwritedate输出到txt文件
我创建了以下代码,它成功地获取了所有excel文件并创建了文件名列表
Get-ChildItem "D:\network_folder\" -Filter *.xls -Recurse | Select-Object -Property FullName, LastWriteTime |
Export-Csv -Path "C:\local_folder\file_list.csv" -Force -NoTypeInformation
但我无法解决以下问题:
- 如何以及在何处筛选最后写入时间
- 如何以及在何处过滤名称中的“2022
- 将文件复制到本地文件夹的方式和位置
- 现在我只是把这些都放在命令行中,我需要创建一些文件来运行这个过程吗?
感谢您提供的任何帮助!
1条答案
按热度按时间vsmadaxz1#
我猜你想要这样的东西。它在源文件夹中搜索文件名为
2022
,扩展名为.xls(或xls之后的任何东西)的文件。然后循环遍历这些项目,在目标文件夹中找到这些项目的位置创建子文件夹结构,复制文件,最后写出包含原始文件信息的CSV文件。