簡體   English   中英

從CSV獲取數據以從多個服務器刪除用戶文件夾

[英]Get data from CSV to delete users folders from multiple servers

我對Powershell非常陌生,情況是我有一些不需要的用戶文件夾,必須在其他服務器上將其刪除。 所有服務器上的路徑均為fe“ \\ server1 \\ hiddenshare $ \\ username”。我的CSV如下所示:

ServerName,FolderName
SERVER1,AAAA
SERVER2,AAA1
SERVER3,AAA2

我正在嘗試運行以下代碼:

$path = "C:\temp\servers_folders.csv"
$ServerName = Import-Csv -Path $path
$FolderName = Import-CSV -Path $path
Import-Csv -Path $path | % {
  Remove-Item -Path \\$ServerName\hiddenshare$\$FolderName -Recurse
    }

畢竟我得到這個錯誤:

Remove-Item : Cannot find path '\\  \$\  ' because it does not exist.
At C:\temp\servers_folders.csv.ps1:5 char:3
+   Remove-Item -Path \\$ServerName\hiddenshare$\$FolderName -Recurse
+   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (\\  \usr$\  :String) [Remove-Item], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.RemoveItemCommand

您不需要多次導入csv。 在foreach塊中,您必須通過$_引用當前項目

試試這個,刪除-whatif(如果可以)

$servers=import-csv .\servers.csv

$servers | %{
    remove-item -path \\$($_.servername)\users$\$($_.FolderName) -whatif
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM