कुछ इस तरह काम करना चाहिए:
$folders = 'C:\temp','C:\users\joe\foo'
Get-ChildItem $folders -r -filter foo.bak | Remove-Item -WhatIf
नाम तो आप एक कहाँ scriptblock जैसे में एक regex उपयोग कर सकते हैं और अधिक परिष्कृत मिलान की आवश्यकता है कर सकते हैं 'टी परीक्षण अभी, खेद
$filenames = @('filename1.txt', 'filename2.txt', 'filename3.txt')
foreach($file in $filenames)
{
#GCI recursive to find all instances of this filename
$filesToDelete = Get-ChildItem -R | where {$_.Name -eq $file}
foreach($f in $filesToDelete)
{
#delete the file that matches, etc. here
# just using Write-Host to echo out the name for now
Write-Host $f.Name
}
}
सबसे powershell के साथ के रूप में, आप वास्तव में इस सेक सकते हैं, लेकिन चाहते हैं स्पष्टीकरण के लिए विस्तार करने के लिए एड।
आप अपनी आवश्यकताओं के अनुरूप इसे बढ़ा सकते हैं। उदाहरण के लिए यदि आपको "हटाएं" शब्द वाली सभी फाइलों की आवश्यकता है, तो आप gci कर सकते हैं जहां {$ _। नाम-जैसा "$ फ़ाइल"}
स्रोत
2010-10-13 21:27:53
PSIsContainer क्या है? – Agzam
क्या आप मुझे बता सकते हैं कि किसी चर में परिभाषित सभी फ़ोल्डरों में दिए गए फ़ाइल नाम के साथ फ़ाइलों को कैसे निकालें? – Agzam
$ PSIsContainer PowerShell द्वारा जोड़ा गया एक प्रॉपर्टी है जो इंगित करती है कि "ChildItem" एक कंटेनर (निर्देशिका) है या नहीं (फ़ाइल) है। ध्यान दें कि यह अवधारणा वास्तविक प्रदाता (फाइल सिस्टम, प्रमाणपत्र, wsman, आदि) से स्वतंत्र है। –