我有200台PC需要删除一些特定的图标。
我使用ComputerName(每行1个名字)
创建了一个CSV文件我有另一个文件,其中包含需要从桌面删除的图标文件名(Shortcut1.lnk等)。此其他文件也是CSV(每行1个文件名)。
如何运行PowerShell脚本来删除这些图标。 (请注意,并非我的CSV文件中的所有计算机都可能已打开。有些计算机可能已关闭或出现网络问题。)
$SOURCE = "C:\powershell\shortcuts"
$DESTINATION = "c$\Documents and Settings\All Users\Desktop"
$LOG = "C:\powershell\logs\logsremote_copy.log"
$REMOVE = Get-Content C:\powershell\shortcuts-removal.csv
Remove-Item $LOG -ErrorAction SilentlyContinue
$computerlist = Get-Content C:\powershell\computer-list.csv
foreach ($computer in $computerlist) {
foreach ($file in $REMOVE) {
Remove-Item "\\$computer\$DESTINATION\$file" -Recurse
}
}
到目前为止,这是我的代码,但似乎没有从
中删除文件\\computername\c$\Documents and Settings\All Users\Desktop
我收到错误和警告。日志文件似乎也没有创建。
无论如何要获得删除内容的报告。什么没被删除?
答案 0 :(得分:4)
改变这一点,你已经在$ destination变量中指定了一个斜杠,你加倍了@ \\c$
Remove-Item "\\$computer$DESTINATION\$file" -Recurse
否则,您正试图删除此路径并失败。
\\computername\\c$\Documents and Settings\All Users\Desktop\$file