【发布时间】:2018-12-06 10:46:14
【问题描述】:
我需要根据特定年份的年份、国家名称和最后修改日期排除文件,并将该特定年份的其余文件和国家/地区移至存档文件夹
举个例子
- SS_MM_Master_finland_2018.xlsx 最后修改日期 27/06/2018 19:00。
- SS_MM_Master_finland_2017.xlsx 最后修改日期 27/06/2017 19:00。
在这种情况下,相同的国家和年份的文件名不同,因此特定年份的最后修改日期将被排除,因此两个文件都将被排除
想知道是否有人可以根据他们的经验举一个小例子...不必来自上述示例或任何多重排除规则或任何贡献将不胜感激
有趣的是,我只有单个文件排除器语句,不知道基于文件名的多文件排除器规则,任何示例都适用
我只有一个文件排除语句
$sourcedir = 'C:\Test\Country'
$destdir = 'C:\Test\Country\Archive'
Get-ChildItem -File -Path $sourcedir |
Sort-Object -Property LastWriteTime -Descending |
Select-Object -Skip 1 |
Move-Item -Destination $destdir -force
谢谢
【问题讨论】:
-
除了将 itlay 更改为芬兰之外,您的问题与上次尝试没有什么不同或更清楚。排除什么?仍然没有任何代码向我们展示文件名的来源或您想要排除的内容以及如何排除。请阅读How to Ask 并通过edit提出您的问题提供minimal reproducible example。
-
告诉我们你被困在哪里。向我们展示代码或错误。我们就像一个高级调试器。您需要做一些工作才能使这种关系发挥作用
-
更新了主要问题先生
-
两位评论员都是对的,这个问题就像盲目射击,看看你能得到什么回报。因此,您可以使用文件夹的 Get-ChildItem 进行查询,然后删除所有不需要的。例如
Get-ChildItem C:\Setup\Test\ | Export-csv c:\setup\test\export.csv -NoTypeInformation -Delimiter "|" -Encoding UTF8然后缩短该导出或执行任何您想要的操作并将该 csv 作为您要移动的文件名导入。 -
您是说您希望示例中的这两个文件都被排除在外吗?我无法完全理解这一点
in this case, same country and year is different in the file name so that particular year- last modified date would be excluded so both the files will be excluded。