收集域中电脑信息

$Date=(Get-Date).ToString("yyyyMMdd")

Write-Output ("计算机名称,MAC地址,使用者,主板型号,中央处理器,物理内存(GB),操作系统,IP") |`  Out-File -FilePath C:\LDM-PC$Date.csv -Encoding UTF8

$LDM_PC=(Get-ADComputer -Filter * | Where-Object {$_.Name -like "lmpc*" -or $_.Name -like "lmlap*" }).Name | Sort-Object

ForEach($PC_Info in $LDM_PC){

IF ((Test-Connection -ComputerName $PC_Info -Count 1 -ErrorAction SilentlyContinue ).statuscode -eq 0) {

$ComObject=Get-WmiObject -ComputerName $PC_Info -Class Win32_ComputerSystem
         $Name=$ComObject.Name
 $UserName=$ComObject.UserName
 $FullName=(Get-WmiObject Win32_UserAccount| Where-Object {$_.Caption -eq $UserName }).FullName
 $Memory="{0:N0}" -f ($ComObject.TotalPhysicalMemory/1GB)

$NetObject=Get-WmiObject -ComputerName $PC_Info -Class Win32_NetWorkAdapterConfiguration -Filter "IPEnabled='True'"
 $MACAddress=$NetObject.MACAddress -replace ":","-"
         $IPAddress=$NetObject.IPAddress -like "*.*.*.*"

$ProObject=Get-WmiObject -ComputerName $PC_Info -Class Win32_Processor
 $CPU=$ProObject.Name
        
         $OpeObject=Get-WmiObject -ComputerName $PC_Info -Class Win32_OperatingSystem
 $OpeName=$OpeObject.Caption

$BasObject=Get-WmiObject -ComputerName $PC_Info -Class Win32_BaseBoard
         $BaseModel=$BasObject.Product
         $SerialNumber=$BasObject.SerialNumber
            if ($BaseModel -eq "0T1D10       ") {$BaseModel="Dell Vostro3800(大机箱)"}       #注意此处空格
            if ($BaseModel -eq "0RYP79") {$BaseModel="Dell Vostro 3267(小机箱)"}
            if ($BaseModel -eq "0JP3NX") {$BaseModel="Dell OptiPlex 3050 Micro(迷你机箱)"}
            if ($BaseModel -eq "0GG04X") {$BaseModel="Dell OptiPlex 3050 SFF(大机箱)"}
            if ($BaseModel -eq "B250M-D3H-CF") {$BaseModel="技嘉 B250M-D3H-CF"}
            if ($BaseModel -eq "MS-H110D4L FS M.2") {$BaseModel="铭瑄 MS-H110D4L FS M.2"}
            if ($BaseModel -eq "B150M-ET SERIES") {$BaseModel="华硕 B150M-ET SERIES"}
            if ($BaseModel -eq "B85M-F") {$BaseModel="华硕 B85M-F"}
            if ($BaseModel -eq "B85M-D2V-SI") {$BaseModel="技嘉 B85M-D2V-SI"}
            if ($BaseModel -eq "H81M-DS2") {$BaseModel="技嘉 H81M-DS2"}
            if ($BaseModel -eq "C.H81M PRO") {$BaseModel="七彩虹 C.H81M PRO"}
            if ($BaseModel -eq "C.B75K") {$BaseModel="七彩虹 C.B75K"}
            if ($BaseModel -eq "MS-H81IL FS") {$BaseModel="铭瑄 MS-H81IL FS"}
            if ($BaseModel -eq "H81M-VG4 R2.0") {$BaseModel="华擎 H81M-VG4 R2.0"}
            
            if ($SerialNumber -eq "/4MP1KL2/CNPE10078C05EZ/") {$FullName="会议室1"}
            if ($SerialNumber -eq "/4MK1KL2/CNPE10078B06OX/") {$FullName="会议室2"}
            if ($SerialNumber -eq "/4MD3KL2/CNPE1007860LI5/") {$FullName="会议室3"}
   
 
            Write-Output("`"$Name`",`"$MACAddress`",`"$FullName`",`"$BaseModel`",`"$CPU`",`"$Memory`",`"$OpeName`",`"$IPAddress`"") | Out-File -FilePath C:\LDM-PC$Date.csv -Append -Encoding UTF8

}          
}

原文地址:http://blog.51cto.com/hbgslz/2057749

时间: 2024-11-09 02:42:00

收集域中电脑信息的相关文章

如何在域中电脑安装被杀毒软件直接查杀的财务软件?

如何在域中电脑安装被杀毒软件直接查杀的财务软件? ?Lander Zhang 专注外企按需IT基础架构运维服务,IT Helpdesk 实战培训践行者博客:https://blog.51cto.com/lander IT Helpdesk实战培训视频课程:https://edu.51cto.com/lecturer/733218.html2019/4/4 问题描述 帮某公司按总部规划标准化IT环境后,域中所有电脑都统一部署了Symantec的杀毒软件客户端.这些客户端设置了统一策略,即使是使用本

转移域中的操作主机提升域功能级别!

一.先说提升域功能级别! 在Windows域中,随着操作系统的更新升级好多新的功能是之前的的操作系统不支持的,但是域环境在很久以前就已经在的操作系统(比如Windows server 2003)上搭建好了,无法使用更高的功能级别(比如Windows server 2008 R2)!这时就需要使用到今天提升域功能的实验内容了! 二.要想转移操作主机就不得不提操作主机 1.操作主机一共有五个:架构主机.域命名主机.PDC仿真主机.RID主机和基础结构主机! 1.1.架构主机:用于控制AD整个林中所有

C#获取AD域中计算机和用户的信息

如果你的计算机加入了某个AD域,则可以获取该域中所有的计算机和用户的信息. 所用程序集,需要.Net Framework 4. 添加程序集引用 System.DirectoryServices.AccountManagement 获取AD域名称,未加入AD域的,只能获取计算机名称. 如果未加入任何域,则后续的获取域用户.计算机等操作将无法进行,实例化域上下文对象时,会抛出异常. 1 IPGlobalProperties ipGlobalProperties = IPGlobalPropertie

使用工具Csvde将域中的所有用户的信息导出

有时我们需要获取AD域用户中的信息及状态,想知道哪些用户帐号是被禁用的,哪些用户帐号是正常的,用户的部门.电话.职位信息等等. 下面我将自己做的实验步骤分享一下. 第1步:首先用脚本命令将AD用户信息导出,导的时候可以根据自己的需要,导出有用的用户信息,过滤掉不需要的信息. 命令脚本: csvde -d "ou=XX公司,DC=contoso,DC=com" -r "(&(objectcategory=person)(objectClass=user))" 

如何手动激活域中工作组模式电脑客户端?

如何手动激活域中工作组模式电脑客户端? ?Lander Zhang 专注外企按需IT基础架构运维服务,IT Helpdesk 实战培训践行者博客:https://blog.51cto.com/lander IT Helpdesk实战培训视频课程:https://edu.51cto.com/lecturer/733218.html2019/03/20 问题描述 客户公司域中已经搭建KMS激活服务器,加域的客户端电脑可以自动激活.其中有2台服务器因业务原因不需要加域,目前是未激活状态,我们需要手动激

域中Win7客户端无法使用键盘鼠标唤醒屏幕(组策略排错)

用户域中设置了屏幕锁定的策略,并且已经稳定的运行数年,最近部分Win7客户端出现了一些奇怪的问题,客户端实行了这条域策略后屏幕无法使用鼠标或者键盘唤醒,正常情况下只要活动鼠标或键盘就可以进行密码输入,更郁闷的是一些用户不懂如何解决这样的问题,直接重启计算机造成了有的数据丢失,还好这个不怪我 域策略是对用户生效的,如果加入域的计算机使用本地账户登录也不会出现这种问题,所以跟策略还是有一定的关系 ===问题客户端 下图就是我滑动鼠标后出现的现象,正常情况下可以直接输入密码进入系统的 现在我的鼠标可以

将CnetOS 6.5加入Windows域中

我相信,很多公司都有统一身份认证的需求,只是这个统一认证很多公司都没有彻底完成,比如我见到的很多企业都使用Windows AD来管理办公电脑,笔记本等运行windows操作系统的计算机,而IDC机房大多是Linux系统的服务器,这些都采用ldap(如openldap)来做身份认证,但是Windows AD和ldap基本上就没有什么关系了.问过一两个企业的系统管理员,也基本清楚,主要是服务器的数量就那么多,而且大部分用户是不需要登录服务器的,所以只有运维人员才需要进行服务器管理,所以使用ldap统

数据库性能优化、统计信息与对象统计信息概述收集、扩展统计信息、dbms_stats.get_prefs

数据库性能优化 相关书籍: 1.基于成本的Oracle优化法则 2.Oracle性能诊断艺术 3.基于Oracle的SQL优化 ----------------------------------------------------------------------------------------- 两种优化器: CBO  cost-base optimizer 基于cost 更大适应性/灵活性/10g开始 RBO  rule-base optimizer 基于规则 制定了15条/10g以

Oracle里收集与查看统计信息的方法

Oracle数据库里的统计信息是这样的一组数据:它存储在数据字典里,且从多个维度描述了Oracle数据库里对象的详细信息.CBO会利用这些统计信息来计算目标SQL各种可能的.不同的执行路径的成本,并从中选择一条成本值最小的执行路径来作为目标SQL的执行计划. Oracle数据库里的统计信息可以分为如下6种类型: 表的统计信息 索引的统计信息 列的统计信息 系统统计信息 数据字典统计信息 内部对象统计信息 表的统计信息用于描述Oracle数据库里表的详细信息,它包含了一些典型的维度,如记录数.表块