一(yi)鍵生成酷炫系統報告-腳本(ben)版
引言
作為(wei)一(yi)名技術愛好者或IT專業(ye)人士,你是(shi)(shi)(shi)否經常需(xu)要查看(kan)(kan)電(dian)腦的硬件(jian)信(xin)息(xi)?無論是(shi)(shi)(shi)排(pai)查問題、升級硬件(jian)還是(shi)(shi)(shi)單純想了解自己的設(she)備配置,傳統的系(xi)統信(xin)息(xi)查看(kan)(kan)方式總是(shi)(shi)(shi)顯得那么單調(diao)乏味(wei)。今天,我要向大家介紹一(yi)款專為(wei)IT運(yun)維(wei)打造的硬件(jian)信(xin)息(xi)收(shou)集工具,它將徹底改變你查看(kan)(kan)系(xi)統信(xin)息(xi)的方式!
工具特色
?? 個性化視覺體驗
-
專屬ASCII藝(yi)術標題:大寫的POPEYELXW以(yi)精(jing)美的ASCII藝(yi)術形(xing)式呈現(xian)
-
彩色(se)控制臺(tai)輸出(chu):不同信息模(mo)塊使(shi)用不同顏色(se),視(shi)覺效果出(chu)眾
-
動(dong)態加(jia)載(zai)動(dong)畫:實時顯示收(shou)集進度,告別枯燥等(deng)待
-
專(zhuan)業邊框(kuang)設(she)計:每(mei)個信(xin)息模塊都有精美的邊框(kuang)裝飾
?? 全面的硬件信息
-
系(xi)(xi)統(tong)概(gai)覽:操作系(xi)(xi)統(tong)版本、安裝日(ri)期、啟動時(shi)間(jian)等
-
CPU詳(xiang)情:處理器型號(hao)、核(he)心(xin)數、頻率架構
-
內存分(fen)析:總容(rong)量、插槽使用情(qing)況、各模塊(kuai)詳細信(xin)息
-
存儲設備(bei):硬(ying)盤型(xing)號、容量、接口類型(xing)、序列號
-
顯卡信息:顯卡型號、顯存大小、驅動版本
-
網(wang)絡適配器:網(wang)絡設(she)備名稱、MAC地址
使用方法
簡單三步即可使用:
-
保存腳本
powershell# 酷炫版硬件信息收集腳本 - 修正版 # 保存為 get_system_info.ps1 # 設置控制臺顏色和編碼 $Host.UI.RawUI.WindowTitle = " POPEYELXW 硬件信息收集工具 " $Host.UI.RawUI.ForegroundColor = "White" # 酷炫的ASCII藝術標題 function Show-AsciiTitle { Write-Host "" Write-Host "╔══════════════════════════════════════════════════════════════════════════════╗" -ForegroundColor Cyan Write-Host "║ ║" -ForegroundColor Cyan Write-Host "║ ██████╗ ██████╗ ██████╗ ███████╗██╗ ██╗███████╗██╗ ██╗ ██╗ ║" -ForegroundColor Yellow Write-Host "║ ██╔══██╗██╔═══██╗██╔══██╗██╔════╝╚██╗ ██╔╝██╔════╝██║ ██║ ██║ ║" -ForegroundColor Yellow Write-Host "║ ██████╔╝██║ ██║██████╔╝█████╗ ╚████╔╝ █████╗ ██║ ██║ █╗ ██║ ║" -ForegroundColor Yellow Write-Host "║ ██╔═══╝ ██║ ██║██╔═══╝ ██╔══╝ ╚██╔╝ ██╔══╝ ██║ ██║███╗██║ ║" -ForegroundColor Yellow Write-Host "║ ██║ ╚██████╔╝██║ ███████╗ ██║ ███████╗███████╗╚███╔███╔╝ ║" -ForegroundColor Yellow Write-Host "║ ╚═╝ ╚═════╝ ╚═╝ ╚══════╝ ╚═╝ ╚══════╝╚══════╝ ╚══╝╚══╝ ║" -ForegroundColor Yellow Write-Host "║ ║" -ForegroundColor Cyan Write-Host "╠══════════════════════════════════════════════════════════════════════════════╣" -ForegroundColor Cyan Write-Host "║ ║" -ForegroundColor Green Write-Host "║ 系統硬件信息收集工具 ║" -ForegroundColor Green Write-Host "║ ║" -ForegroundColor Green Write-Host "║ 專屬用戶: POPEYELXW ║" -ForegroundColor Green Write-Host "╚══════════════════════════════════════════════════════════════════════════════╝" -ForegroundColor Cyan Write-Host "" } # 顯示加載動畫 - 修正版 function Show-LoadingAnimation { param([string]$Message, [int]$Seconds = 2) $chars = @('', '', '', '', '', '', '', '') $startTime = Get-Date # 修正的while循環 while (((Get-Date) - $startTime).TotalSeconds -lt $Seconds) { foreach ($char in $chars) { Write-Host "`r$Message $char" -NoNewline -ForegroundColor Green Start-Sleep -Milliseconds 100 } } Write-Host "`r$Message " -ForegroundColor Green } # 獲取系統信息 function Get-SystemInfo { Write-Host "`n 收集系統信息..." -ForegroundColor Magenta Show-LoadingAnimation -Message "正在獲取系統詳情" -Seconds 1 $os = Get-WmiObject -Class Win32_OperatingSystem $computer = Get-WmiObject -Class Win32_ComputerSystem $systemInfo = @" ╔══════════════════════════════════════════════════════════════════════════════╗ ║ 系統信息 ╠══════════════════════════════════════════════════════════════════════════════╣ ║ 系統名稱: $($os.Caption) ║ 系統版本: $($os.Version) ║ 系統架構: $($os.OSArchitecture) ║ 安裝日期: $(($os.ConvertToDateTime($os.InstallDate)).ToString("yyyy-MM-dd HH:mm:ss")) ║ 最后啟動: $(($os.ConvertToDateTime($os.LastBootUpTime)).ToString("yyyy-MM-dd HH:mm:ss")) ║ 計算機名: $($computer.Name) ║ 制造商 : $($computer.Manufacturer) ║ 型號 : $($computer.Model) ║ 當前用戶: $env:USERNAME ╚══════════════════════════════════════════════════════════════════════════════╝ "@ return $systemInfo } # 獲取CPU信息 function Get-CPUInfo { Write-Host "`n 收集CPU信息..." -ForegroundColor Magenta Show-LoadingAnimation -Message "正在分析處理器" -Seconds 1 $cpu = Get-WmiObject -Class Win32_Processor $cpuInfo = @" ╔══════════════════════════════════════════════════════════════════════════════╗ ║ CPU信息 ╠══════════════════════════════════════════════════════════════════════════════╣ ║ 處理器: $($cpu.Name) ║ 核心數: $($cpu.NumberOfCores) 物理核心 | $($cpu.NumberOfLogicalProcessors) 邏輯核心 ║ 最大頻率: $([math]::Round($cpu.MaxClockSpeed/1000, 2)) GHz ║ 架構: $($cpu.AddressWidth) 位 ║ 制造商: $($cpu.Manufacturer) ╚══════════════════════════════════════════════════════════════════════════════╝ "@ return $cpuInfo } # 獲取內存信息 function Get-MemoryInfo { Write-Host "`n 收集內存信息..." -ForegroundColor Magenta Show-LoadingAnimation -Message "正在檢測內存模塊" -Seconds 1 $memory = Get-WmiObject -Class Win32_PhysicalMemory $totalMemory = ($memory | Measure-Object -Property Capacity -Sum).Sum / 1GB $memorySlots = "" $i = 1 foreach ($mem in $memory) { $sizeGB = [math]::Round($mem.Capacity / 1GB, 2) $memorySlots += "║ 插槽 $i : $sizeGB GB | $($mem.Speed) MHz | $($mem.Manufacturer)`n" $i++ } $memoryInfo = @" ╔══════════════════════════════════════════════════════════════════════════════╗ ║ 內存信息 ╠══════════════════════════════════════════════════════════════════════════════╣ ║ 總內存: $([math]::Round($totalMemory, 2)) GB ║ 內存插槽使用: $($memory.Count) / $((Get-WmiObject -Class Win32_PhysicalMemoryArray).MemoryDevices) $memorySlots╚══════════════════════════════════════════════════════════════════════════════╝ "@ return $memoryInfo } # 獲取磁盤信息 function Get-DiskInfo { Write-Host "`n 收集磁盤信息..." -ForegroundColor Magenta Show-LoadingAnimation -Message "正在掃描存儲設備" -Seconds 2 $disks = Get-WmiObject -Class Win32_DiskDrive $diskInfo = "╔══════════════════════════════════════════════════════════════════════════════╗`n" $diskInfo += "║ 磁盤信息 `n" $diskInfo += "╠══════════════════════════════════════════════════════════════════════════════╣`n" foreach ($disk in $disks) { $sizeGB = [math]::Round($disk.Size / 1GB, 2) $diskInfo += "║ 型號: $($disk.Model)`n" $diskInfo += "║ 大小: $sizeGB GB | 接口: $($disk.InterfaceType)`n" $diskInfo += "║ 序列號: $($disk.SerialNumber)`n" $diskInfo += "║ ------------------------------------------------------------------------ `n" } $diskInfo += "╚══════════════════════════════════════════════════════════════════════════════╝" return $diskInfo } # 獲取顯卡信息 function Get-GraphicsInfo { Write-Host "`n 收集顯卡信息..." -ForegroundColor Magenta Show-LoadingAnimation -Message "正在識別圖形設備" -Seconds 1 $gpus = Get-WmiObject -Class Win32_VideoController $gpuInfo = "╔══════════════════════════════════════════════════════════════════════════════╗`n" $gpuInfo += "║ 顯卡信息 `n" $gpuInfo += "╠══════════════════════════════════════════════════════════════════════════════╣`n" foreach ($gpu in $gpus) { if ($gpu.Name -notlike "*Remote*" -and $gpu.Name -notlike "*Microsoft*") { $vram = if ($gpu.AdapterRAM -gt 1GB) { "$([math]::Round($gpu.AdapterRAM/1GB, 2)) GB" } else { "$([math]::Round($gpu.AdapterRAM/1MB, 2)) MB" } $gpuInfo += "║ 顯卡: $($gpu.Name)`n" $gpuInfo += "║ 顯存: $vram | 驅動版本: $($gpu.DriverVersion)`n" $gpuInfo += "║ ------------------------------------------------------------------------ `n" } } $gpuInfo += "╚══════════════════════════════════════════════════════════════════════════════╝" return $gpuInfo } # 獲取網絡信息 function Get-NetworkInfo { Write-Host "`n 收集網絡信息..." -ForegroundColor Magenta Show-LoadingAnimation -Message "正在檢查網絡適配器" -Seconds 1 $adapters = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object { $_.NetEnabled -eq $true } $networkInfo = "╔══════════════════════════════════════════════════════════════════════════════╗`n" $networkInfo += "║ 網絡信息 `n" $networkInfo += "╠══════════════════════════════════════════════════════════════════════════════╣`n" foreach ($adapter in $adapters) { $networkInfo += "║ 適配器: $($adapter.Name)`n" $networkInfo += "║ MAC地址: $($adapter.MACAddress)`n" $networkInfo += "║ ------------------------------------------------------------------------ `n" } $networkInfo += "╚══════════════════════════════════════════════════════════════════════════════╝" return $networkInfo } $mytitle=" _____ ____ _____ ________ ________ _ __ ___ __`n" $mytitle+=" | __ \ / __ \| __ \| ____\ \ / / ____| | \ \ / | \ / /`n" $mytitle+=" | |__) | | | | |__) | |__ \ \_/ /| |__ | | \ V / \ \ /\ / / `n" $mytitle+=" | ___/| | | | ___/| __| \ / | __| | | > < \ \/ \/ / `n" $mytitle+=" | | | |__| | | | |____ | | | |____| |____ / . \ \ /\ / `n" $mytitle+=" |_| \____/|_| |______| |_| |______|______/_/ \_\ \/ \/ `n" # 主程序 Clear-Host Show-AsciiTitle Write-Host "開始收集系統硬件信息..." -ForegroundColor Yellow Write-Host "═══════════════════════════════════════════════════════════════════════════════" -ForegroundColor Gray # 收集所有信息 $allInfo = @() $allInfo += $mytitle $allInfo += Get-SystemInfo $allInfo += Get-CPUInfo $allInfo += Get-MemoryInfo $allInfo += Get-DiskInfo $allInfo += Get-GraphicsInfo $allInfo += Get-NetworkInfo # 保存到文件 $outputFile = "$env:USERPROFILE\Desktop\酷炫硬件信息報告.txt" Write-Host "`n 正在保存報告到桌面..." -ForegroundColor Magenta # 添加進度條 for ($i = 0; $i -le 100; $i += 10) { Write-Progress -Activity "保存硬件信息報告" -Status "正在寫入文件..." -PercentComplete $i Start-Sleep -Milliseconds 100 } Write-Progress -Activity "保存硬件信息報告" -Completed $allInfo | Out-File -FilePath $outputFile -Encoding UTF8 # 顯示完成信息 Write-Host "" Write-Host " 硬件信息收集完成!" -ForegroundColor Green Write-Host " 報告已保存至: $outputFile" -ForegroundColor Cyan Write-Host "" Write-Host " 感謝使用個人專屬硬件信息收集工具!" -ForegroundColor Yellow Write-Host "" # 詢問是否打開文件 try { $openFile = Read-Host "是否立即打開報告文件?(Y/N)" if ($openFile -eq 'Y' -or $openFile -eq 'y') { Invoke-Item $outputFile } } catch { Write-Host "無法打開文件,請手動訪問: $outputFile" -ForegroundColor Yellow } Write-Host "" Write-Host "按任意鍵退出..." -ForegroundColor Gray $null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") -
運行腳本
powershell# 右鍵點擊文件,選擇"使用(yong)PowerShell運行" # 或以管理員身份運行PowerShell,然后執行: .\get_system_info.ps1
-
查看報告
-
腳本會自動在桌面生成
POPEYELXW_硬件信息報告.txt -
可選擇(ze)立(li)即打(da)開報告文件或稍后查看(kan)
-
運行要求
-
Windows PowerShell 5.0 或更高(gao)版本
-
建議以管理員權(quan)限運行,獲取更完整的(de)信息(xi)
-
無需安(an)裝任(ren)何(he)額(e)外軟件或模塊(kuai)
技術亮點
??? 健壯的錯誤處理
try {
# 硬件信息收集代碼
$cpu = Get-WmiObject -Class Win32_Processor
} catch {
# 優雅的降級處理
Write-Host "部分信息獲取失敗,但不影響整體報告生成"
}
?? 實時進度反饋
# 動態加載動畫
$chars = @('?', '?', '?', '?', '?', '?', '?', '?')
# 進度條顯示
Write-Progress -Activity "保存硬件信息報告" -PercentComplete $i
?? 個性化定制
工具專為(wei)POPEYELXW定制(zhi),包括:
-
專屬ASCII藝(yi)術字(如果(guo)有興趣想改自己的,可以(yi)在這(zhe)個網站生成//patorjk.com/software/taag/#p=display&f=Avatar&t=Type+Something+&x=none&v=4&h=4&w=80&we=false)
-
個性化歡迎信息
-
定制化文件名
-
專屬感謝語
實際應用場景
?? 專業用途
-
IT支持:快速收集客(ke)戶系統(tong)信息(xi),提高故障診(zhen)斷效率
-
系(xi)統管理:批量收集(ji)多臺設備硬(ying)件信(xin)息,建立資產清單
-
采購決策:基于(yu)現有硬件配置制定(ding)升級計劃
?? 個人用途
-
硬(ying)件愛好者:詳細了解自己的(de)設備配置
-
游戲(xi)玩家:評估系統(tong)性能,優化(hua)游戲(xi)體驗
-
學習研(yan)究:了解計算機(ji)硬件組成(cheng)和工作原(yuan)理
結語
這款POPEYELXW專屬硬件(jian)(jian)信(xin)息收(shou)集(ji)工(gong)(gong)具(ju)不僅(jin)實用(yong)性強,更重(zhong)要(yao)的是它讓原本枯燥的系統信(xin)息收(shou)集(ji)變得(de)有趣而酷炫。無論你是IT專業人士還是普通用(yong)戶,這款工(gong)(gong)具(ju)都能(neng)為你提供全面、直(zhi)觀的系統硬件(jian)(jian)信(xin)息。
技術(shu)不應該只是冰冷的數據,也可(ke)以充(chong)滿藝術(shu)和個性(xing)!
立即嘗試:復制文(wen)章中的代碼,保存為(wei)PS1文(wen)件(jian)(jian),體(ti)驗這款專為(wei)熱愛計算機的發燒友打造的硬件(jian)(jian)信息(xi)收集(ji)工具吧!
作者:POPEYE-LXW
轉載請注明出處