如果不使用,则删除文件夹和子文件夹(Powershell)

Posted

技术标签:

【中文标题】如果不使用,则删除文件夹和子文件夹(Powershell)【英文标题】:delete folder and subfolder if is not used (Powershell) 【发布时间】:2017-10-30 22:51:22 【问题描述】:

我是 PowerShell 初学者。

我需要一个 powershell 脚本。它必须这样做:

\\routefolders\xxxxx
\\routefolders\jhon
\\routefolders\mike
\\routefolders\sandra
.
.
.
etc...

查找更新时间超过 2 年的文件

如果在 \routefolders\xxxxx "XXXXX" 中存在某些文件(在所有子文件夹中搜索)什么都不做

如果没有超过 2 年的文件打印在一个文件中并删除文件夹和子文件夹 \routefolders\xxxxx

“XXXXX”文件夹是用户个人文件夹,如果用户不使用这个我想保存一个日志然后删除这个文件夹

我有这个,删除一个特定的文件夹。我需要这样的 PS:

$RootDir="c:\temp\test"
$Users = Get-ChildItem $RootDir -Name
$FolderToDelete = "subcarpeta1"


foreach ($user in $Users)

  $n = $n +1
  write-host $n $user

  #Remove-Item -path $rootdir\$user\$FolderToDelete -Force -Recurse  
 

【问题讨论】:

How to recursively delete an entire directory with PowerShell 2.0?的可能重复 【参考方案1】:

你可以试试这样的:

function Safely-Delete($fileItem)
 

    if($fileItem.FullName.StartsWith("your path"))
               
        Set-Location $fileItem.FullName
        Write-Host "Removing Item: $fileItem"
        Remove-Item $fileItem.FullName -Recurse 
    


function Remove-File($path, $ageInYears)

    foreach($childItem in Get-ChildItem -Path $path)
    
        if($childItem.Lastwritetime -lt (date).AddYears(-$ageInYears))
        
            Safely-Delete $childItem
        
    


$age = 2
Remove-File "your path" $age

【讨论】:

以上是关于如果不使用,则删除文件夹和子文件夹(Powershell)的主要内容,如果未能解决你的问题,请参考以下文章

JAVA输出指定目录下的子目录和子文件

bat命求助,如何删除文件夹和子文件夹中某个类型以外的所有文件。

Delphi TreeView 选择父节点,选择所有子节点

powershell 这将使用PowerShell从库中删除SharePoint中特定文件夹和子文件夹中的文件

在 Excel VBA 中创建文件夹和子文件夹

递归方法删除文件夹(包含所有文件和子文件)