我正在尝试做的是查看一些进程并获取这些进程的用户列表。下面的代码对我来说很好。
get-wmiobject win32_process |
where{$_.name -like "*notepad*"}|sort {$_.CommandLine}|
select @{n="User";e={$_.getowner().user}},@{n="ProcessID";e={$_.ProcessID}},{$_.CommandLine} |ft -AutoSize |Out-String -Width 300 >> C:\ListUsers.txt
不知何故,我想在中间拆分 $_.CommandLine 字符串,并输出一些拆分数组(请参阅以下代码以获得更好的想法,尽管代码是错误的)。但是更新后的代码不会在文本文件中输出任何内容。我想我一定是错误地使用了 select-object 或 fommat-object,但我不知道如何修复它。
get-wmiobject win32_process |
where{$_.name -like "*notepad*"}|sort {$_.CommandLine}|
%{
$split = $_.CommandLine.split("\")
select @{n="User";e={$_.getowner().user}},@{n="ProcessID";e={$_.ProcessID}},@{n="Ihub";e=$split[3]},@{n="version";e=$split[3]},@{n="version";e=$split[3]} |
ft -AutoSize |Out-String -Width 300 >> C:\ListUsers.txt
}
任何人都可以建议吗?谢谢!!