我正在编写一个由 SCCM 通过包部署的 powershell 脚本。这样做的目的是删除具有特定名称的帐户,然后写入文件,说明该帐户是否存在。代码如下:
$Computer = hostname
foreach ($C in $Computer) {
if (Test-Connection $C -Quiet) {
Write-Verbose "$C > Online"
$Users = Get-WMIObject Win32_UserAccount -Filter "LocalAccount=True" -ComputerName $C
if ($Users.Name -contains 'test') {
Add-Content \\SERVERNAME\SHARENAME.$\$computer-found_$(get-date -Format yyyymmdd_hhmmtt).txt "User 'test' found, Disable 'test' found"
net user test /active:no }
else {
Add-Content \\SERVERNAME\SHARENAME.$\$computer-notfound_$(get-date -Format yyyymmdd_hhmmtt).txt "User 'test' not found"
}
}
else {
Write-Verbose "$C > Offline"
}
}
我也尝试过Write-Verbose
用Write-Host
和Add-Content
用替换,Out-File
但我遇到的问题是,当我使用完整的网络路径或共享时,没有创建任何内容/文件,例如\\SERVERNAME\SHARENAME.$
,标识的路径具有所有正确的权限,并且正在使用系统帐户在本地运行。
我想看看在本地写入文件时是否发生了问题,因此写入文件时不会发生这种情况C:\Temp\
有没有人有任何想法来解决这个问题。