小编Tec*_*now的帖子

如何在一行中输出多个变量

我试图确定 CSV 中的用户是否处于活动状态,此外,我想知道它们是否是服务帐户、用户帐户或基于 OU 的计算机帐户。

一切都在膨胀,直到我尝试输出它......输出分为几行(每个变量一行)。

我希望输出在一行上(中间有逗号,这样我完成后就会有一个 CSV)...我已经尝试了二十种不同的方法,得到了四十种不同的结果 O_o。

奖励:为任何产生错误的名称添加一条消息(即用户不存在...)我正在考虑一个 if/else,但无法获得基本的输出行为。

我尝试过用括号括起来,连接变量,嵌套变量……用棍子敲打我的电脑……静静地思考我的人生选择……

$Users = Get-Content C:\ActiveUsers.txt

ForEach ($User in $Users){
$properties = Get-ADUser -Identity $User | select SamAccountName,Enabled,DistinguishedName 
if (Select-String -Pattern "UserMgt" -InputObject $properties) { $base = "User" }
if (Select-String -Pattern "ApplSec" -InputObject $properties) { $base = "Service Account" }
if (Select-String -Pattern "WkstnMgt" -InputObject $properties) { $base = "Machine Account" }
write-output $properties.SamAccountName $properties.Enabled $base
#$Output = Write-Output $properties.SamAccountName $properties.Enabled $base 
#$Output #| out-file  C:\UserStatus-OU2.csv -append
}
Run Code Online (Sandbox Code Playgroud)

powershell scripting

9
推荐指数
2
解决办法
4万
查看次数

标签 统计

powershell ×1

scripting ×1