【问题标题】:delete folder and subfolder if is not used (Powershell)如果不使用,则删除文件夹和子文件夹(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  
} 

【问题讨论】:

标签: powershell directory


【解决方案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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2010-12-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多