你能幫我一個powershell腳本嗎?我想檢查是否存在多個檔案,如果存在則洗掉這些檔案。如果檔案已被洗掉,則提供資訊,如果檔案不存在,則提供資訊。
我找到了下面的腳本,它只適用于 1 個檔案,如果檔案不存在,它不會給出訊息。你能幫我調整一下嗎?我想洗掉檔案 c:\temp\1.txt、c:\temp\2.txt、c:\temp\3.txt(如果存在)。如果這些不存在,則顯示它們不存在的訊息。如果檔案不存在,Powershell 不應拋出錯誤或停止。
$FileName = "C:\Test\1.txt"
if (Test-Path $FileName) {
Remove-Item $FileName -verbose
}
謝謝您的幫助!湯姆
uj5u.com熱心網友回復:
第 1 步:您需要多個檔案。你可以通過兩種方式做到這一點:
$files = "C:\file1.txt","C:\file2.txt","C:\file3.txt"
那會作業,很麻煩。更輕松?將所有檔案放在一個 .csv 串列中,然后匯入。請記住,第一行沒有被讀取,因為它考慮了標題:
$files = Import-Csv "C:\yourcsv.csv"
好的第2步:現在你有了你的檔案,現在我們要回圈它們:
Foreach ($file in $files) {
If (Test-Path $file) {
Remove-Item $file -verbose | Add-Content C:\mylog.txt }
else { Write-Host "$file not found" }}
Foreach 回圈將每個單獨的“條目”放入一個變數中,然后對它們做任何你想做的事情。那應該做你想做的事。
uj5u.com熱心網友回復:
您可以創建要洗掉的路徑串列并像這樣回圈遍歷該串列
$paths = "c:\temp\1.txt", "c:\temp\2.txt", "c:\temp\3.txt"
foreach($filePath in $paths)
{
if (Test-Path $filePath) {
Remove-Item $filePath -verbose
} else {
Write-Host "Path doesn't exits"
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/428276.html
標籤:电源外壳
