পাওয়ারশেল ভি 2.0 ব্যবহার করে আমি এক্স দিনের চেয়ে পুরানো যে কোনও ফাইল মুছতে চাই:
$backups = Get-ChildItem -Path $Backuppath |
Where-Object {($_.lastwritetime -lt (Get-Date).addDays(-$DaysKeep)) -and (-not $_.PSIsContainer) -and ($_.Name -like "backup*")}
foreach ($file in $backups)
{
Remove-Item $file.FullName;
}
তবে, যখন $ ব্যাকআপগুলি খালি থাকে আমি পাই: Remove-Item : Cannot bind argument to parameter 'Path' because it is null.
আমি চেষ্টা করেছিলাম:
- সঙ্গে foreach রক্ষা
if (!$backups)
- এর সাথে সরান-আইটেমটি রক্ষা করা হচ্ছে
if (Test-Path $file -PathType Leaf)
- এর সাথে সরান-আইটেমটি রক্ষা করা হচ্ছে
if ([IO.File]::Exists($file.FullName) -ne $true)
এগুলির কোনওটিই কাজ করছে বলে মনে হয় না, যদি তালিকাটি খালি থাকে তবে কোনও ফোরচ লুপ প্রবেশের প্রতিরোধের প্রস্তাবিত উপায় যদি হয়?