我已经尝试寻找这个答案有一段时间了,但似乎找不到我想要的东西。也许我的措辞很奇怪。
我需要一个脚本,该脚本将递归地从网络共享中的每个子目录中删除特定文件。
例如:
\\\share\\*\a\b\file.settings
* 代表 n 个子目录。路径的其余部分将始终相同。看来我可以在 Powershell 中结合使用 Get-childitem
和 remove-item
来完成此操作,但我无法计算出确切的命令需要。
任何帮助将不胜感激!谢谢。
最佳答案
这样的事情应该有效:
Get-ChildItem '\\server\share' -Recurse | ? {
$_.FullName -like '*\a\b\file.settings'
} | Remove-Item
如果您只对 \\server\share
的直接子文件夹中的文件 .\a\b\file.settings
感兴趣,您可以简化代码像这样的事情:
Get-ChildItem '\\server\share\*\a\b\file.settings' | Remove-Item
关于file - 从子路径中递归删除特定文件的脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22582055/