#1、获取系统安装时间信息及系统本版信息并输出至:System_installation目录
#2、获取系统信息和安全更新(补丁)输出至:Information目录
#3、获取系统软件信息输出至:Update_log目录
# 获取计算机名称
$computerName = $env:COMPUTERNAME
Write-Host "当前计算机名称为:$computerName"
# 定义目标文件夹路径
$targetFolder1 = "\\10.254.4.11\用户软件\System_installation\"
$targetFolder2 = "\\10.254.4.11\用户软件\Information\"
$targetFolder3 = "\\10.254.4.11\用户软件\Update_log\"
#==============================================================================获取系统安装时间信息及系统本版信息并输出至:System_installation目录==========================================================================================
# 创建第一个目标文件的完整路径
$file1 = $targetFolder1 + "\" + $computerName + ".txt"
# 获取当前计算机名称 对比\\10.254.4.11\用户软件\Information\下是否有文件名与计算机名相同,如果有则不采取任何操作,如果没有就获取系统安装时间及系统版本信息) 并输出\\10.254.4.11\用户软件\System_installation下
if (Test-Path $file1) {
Write-Host "False"
} else {
Write-Host "True"
# 获取操作系统安装日期并写入第一个文件
$result1 = Get-CimInstance -ClassName Win32_OperatingSystem | Select-Object -Property InstallDate
# 获取系统版本信息
$OS1 = Get-WmiObject -Class Win32_OperatingSystem | Select-Object -Property Version
#并在内容中添加计算机名称信息,以 # 分隔 输出格式:"计算机名称"#"系统安装日期"#"系统版本信息"
"{0}#{1}#{2}" -f $computerName, $result1.InstallDate,$OS1 | Out-File -FilePath $file1
}
#===============================================================================获取系统信息和安全更新(补丁)输出至:Information目录==========================================================================================================
# 创建第二个目标文件的完整路径
$file2 = $targetFolder2 + "\" + $computerName + ".txt"
# 获取当前计算机名称 对比\\10.254.4.11\用户软件\Information\下是否有文件名与计算机名相同,如果有则不采取任何操作,如果没有就运行wmic qfe get CSName,HotFixID,Description,InstalledOn(获取获取系统补丁信息) 并输出\\10.254.4.11\用户软件\Information下
if (Test-Path $file2) {
Write-Host "False"
} else {
Write-Host "True"
# 获取系统信息和安全更新并写入第二个文件
$result2 = wmic qfe get CSName,HotFixID,Description,InstalledOn
$result2 | Out-File -FilePath $file2
}
#===============================================================================获取系统软件信息输出至:Update_log目录=========================================================================================================================
# 创建第三个目标文件的完整路径
$file3 = $targetFolder3 + "\" + $computerName + ".txt"
# 获取当前计算机名称 对比\\10.254.4.11\用户软件\Information\下是否有文件名与计算机名相同,如果有则不采取任何操作,如果没有就统计系统软件信息) 并输出\\10.254.4.11\用户软件\Update_log下
$file3 = $targetFolder3 + "/" + $computerName + ".txt"
if (!(Test-Path $file3)) {
Write-Host "True"
$installedSoftware = Get-WmiObject -Class Win32_Product | Select-Object Name,Version,Publisher,InstallDate
$sortedSoftware = $installedSoftware | Sort-Object Name
# 将计算机名称和软件的名称、版本、以及安装日期拼接成一行字符串。最后,使用Out-File 输出到之前指定的文本文件中
$sortedSoftware | ForEach-Object {
$output = $computerName + " | 软件名称:" + $_.Name + " 版本: " + $_.Version + " " + $_.Publisher + " 安装日期: " + $_.InstallDate
$output | Out-File -FilePath $file3 -Append
}
} else {
Write-Host "False"
}
#========================================================================
翻译
搜索
复制