Hướng dẫn powershell html report - báo cáo html powershell
PowerShell là một công cụ mạnh mẽ giúp bạn đơn giản hóa và tự động hóa các nhiệm vụ tẻ nhạt và lặp đi lặp lại. Quản trị viên thường sử dụng PowerShell để trích xuất thông tin từ hệ thống hoặc cơ sở dữ liệu khi bộ dữ liệu cần phải được trình bày dưới dạng báo cáo. Nhưng các báo cáo trong các tệp văn bản hoặc CSV thường thiếu kiểu dáng và kiểu dáng lạ mắt của HTML. Trong hướng dẫn này, bạn sẽ học cách tạo báo cáo NN HTML với PowerShell, Show
Không phải là một người đọc? Xem video hướng dẫn liên quan này! Không xem video? Hãy chắc chắn rằng trình chặn quảng cáo của bạn bị vô hiệu hóa. PowerShell có thể giúp bạn xây dựng các báo cáo HTML và tránh xa các định dạng nhạt nhẽo khác này. Chỉ sử dụng PowerShell, bạn có thể làm cho một báo cáo trở nên sống động với HTML cho phép bạn trình bày có ý nghĩa về dữ liệu thô được trích xuất từ hệ thống. Bạn thậm chí có thể áp dụng các bảng kiểu xếp tầng (CSS) để dễ dàng tùy chỉnh bố cục báo cáo của bạn. Trong bài viết này, bạn sẽ tìm hiểu cách sử dụng 6 kết hợp với 7 CMDLET để tạo báo cáo HTML. Bạn cũng sẽ tìm hiểu kịch bản cơ bản cho CSS và làm thế nào nó có thể hữu ích trong việc định dạng thiết kế báo cáo dựa trên HTML của bạn.
Điều kiện tiên quyếtTạo báo cáo thông tin máy tính cơ bản bằng cách sử dụng ConvertTo-HTML
Thay đổi bố cục bảng bằng tham sốTăng cường báo cáo bằng CSS Sử dụng ID HTML và các thuộc tính lớp trong CSS
Sự kết luận Đọc thêmBài viết này sẽ là một hướng dẫn. Nếu bạn có ý định theo dõi, hãy chắc chắn rằng bạn có các điều kiện tiên quyết sau đây được thiết lập trước thời hạn.
Tất cả các ví dụ sẽ được hiển thị bằng Windows 10 Build 1709, nhưng phiên bản này không được yêu cầu Windows PowerShell 5.1 hoặc sau đó phiên bản hoặc PowerShell Core 7Xuất báo cáo vào tệp HTMLKết hợp các báo cáo bằng tham số phân đoạn Thêm nhãn bằng tham số Preontent và Postcontent
Thay đổi bố cục bảng bằng tham số
Tăng cường báo cáo bằng CSS Sử dụng ID HTML và các thuộc tính lớp trong CSSSự kết luậnĐọc thêm Mỗi lệnh sẽ trả về thông tin máy tính khác nhau được định dạng là & NBSP; mã HTML. Để hợp nhất đúng thông tin trong một báo cáo HTML duy nhất, hãy sử dụng tham số 8 để chỉ nhận phần bảng của mã HTML được tạo bởi 8 CMDlet.Như bạn có thể thấy trong ảnh chụp màn hình bên dưới, PowerShell tạo ra tất cả các phần tử HTML cơ bản khi đầu ra được điều khiển đến 8 CMDLET.Danh sách mã HTML được tạo bằng cách sử dụng cmdlet 8Khi bạn sử dụng tham số 8, PowerShell chỉ tạo phần tử bảng HTML. Các yếu tố 4, 5, 6, 7 và các yếu tố khác bị bỏ qua. & nbsp; kết quả được hiển thị dưới đây.Danh sách mã HTML cho bảng bằng tham số phân đoạnBây giờ bạn đã biết tham số 8 hoạt động như thế nào từ ví dụ trên, hãy để áp dụng nó trong tập lệnh.Các lệnh trong tập lệnh bên dưới thực hiện các mục sau:
Thông tin bổ sung về tập lệnh có sẵn trong các bình luận trong đoạn mã bên dưới. Cập nhật tập lệnh với mã sau.
Chạy kịch bản trong bảng điều khiển PowerShell. Bạn có thể thấy đầu ra của báo cáo như hình dưới đây. Báo cáo HTML với thông tin máy tính cơ bảnThêm nhãn bằng tham số #The command below will get the Operating System information, convert the result to HTML code as a table and store it to a variable $OSinfo = Get-CimInstance -Class Win32_OperatingSystem | ConvertTo-Html -Property Version,Caption,BuildNumber,Manufacturer -Fragment #The command below will get the Processor information, convert the result to HTML code as table and store it to a variable $ProcessInfo = Get-CimInstance -ClassName Win32_Processor | ConvertTo-Html -Property DeviceID,Name,Caption,MaxClockSpeed,SocketDesignation,Manufacturer -Fragment #The command below will get the BIOS information, convert the result to HTML code as table and store it to a variable $BiosInfo = Get-CimInstance -ClassName Win32_BIOS | ConvertTo-Html -Property SMBIOSBIOSVersion,Manufacturer,Name,SerialNumber -Fragment #The command below will get the details of Disk, convert the result to HTML code as table and store it to a variable $DiscInfo = Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" | ConvertTo-Html -Property DeviceID,DriveType,ProviderName,VolumeName,Size,FreeSpace -Fragment #The command below will get first 10 services information, convert the result to HTML code as table and store it to a variable $ServicesInfo = Get-CimInstance -ClassName Win32_Service | Select-Object -First 10 |ConvertTo-Html -Property Name,DisplayName,State -Fragment #The command below will combine all the information gathered into a single HTML report $Report = ConvertTo-HTML -Body "$ComputerName $OSinfo $ProcessInfo $BiosInfo $DiscInfo $ServicesInfo" -Title "Computer Information Report" #The command below will generate the report to an HTML file $Report | Out-File .\Basic-Computer-Information-Report.html4 và #The command below will get the Operating System information, convert the result to HTML code as a table and store it to a variable $OSinfo = Get-CimInstance -Class Win32_OperatingSystem | ConvertTo-Html -Property Version,Caption,BuildNumber,Manufacturer -Fragment #The command below will get the Processor information, convert the result to HTML code as table and store it to a variable $ProcessInfo = Get-CimInstance -ClassName Win32_Processor | ConvertTo-Html -Property DeviceID,Name,Caption,MaxClockSpeed,SocketDesignation,Manufacturer -Fragment #The command below will get the BIOS information, convert the result to HTML code as table and store it to a variable $BiosInfo = Get-CimInstance -ClassName Win32_BIOS | ConvertTo-Html -Property SMBIOSBIOSVersion,Manufacturer,Name,SerialNumber -Fragment #The command below will get the details of Disk, convert the result to HTML code as table and store it to a variable $DiscInfo = Get-CimInstance -ClassName Win32_LogicalDisk -Filter "DriveType=3" | ConvertTo-Html -Property DeviceID,DriveType,ProviderName,VolumeName,Size,FreeSpace -Fragment #The command below will get first 10 services information, convert the result to HTML code as table and store it to a variable $ServicesInfo = Get-CimInstance -ClassName Win32_Service | Select-Object -First 10 |ConvertTo-Html -Property Name,DisplayName,State -Fragment #The command below will combine all the information gathered into a single HTML report $Report = ConvertTo-HTML -Body "$ComputerName $OSinfo $ProcessInfo $BiosInfo $DiscInfo $ServicesInfo" -Title "Computer Information Report" #The command below will generate the report to an HTML file $Report | Out-File .\Basic-Computer-Information-Report.html5Tại thời điểm này, tập lệnh giờ đây có thể nhận được tất cả thông tin cơ bản của máy tính và xuất kết quả thành HTML. Tuy nhiên, như bạn có thể thấy trong ảnh chụp màn hình ở trên, ai đó hoặc người nhận báo cáo có thể gặp khó khăn trong việc hiểu nội dung khi bạn xóa chú thích vì thông tin không được dán nhãn hoặc phân loại đúng. Bằng cách sử dụng các tham số 4 và 5, bạn có thể thêm nhãn vào mỗi bảng để bất kỳ ai cũng có thể dễ dàng nhận ra nội dung của báo cáo.Tham số 4 Chỉ định văn bản để thêm trước thẻ mở 9 và tham số 5 chỉ định văn bản để thêm sau khi đóng thẻ 1. Các giá trị được thêm vào các tham số này không được chuyển đổi tự động thành mã HTML, vì vậy bạn cần sử dụng rõ ràng các thẻ HTML để nó được hiển thị đúng dưới dạng các phần tử HTML.Cập nhật tập lệnh bằng cách sử dụng các lệnh bên dưới sau đó chạy tập lệnh trong bảng điều khiển & nbsp; PowerShell. Dưới đây là những thay đổi trong tập lệnh:
Bạn có thể thấy với một chút công việc làm thêm, báo cáo có thể trông tốt hơn rất nhiều, báo cáo nên được cập nhật như hình dưới đây. Báo cáo HTML được thêm vào với các nhãn bằng cách sử dụng các tham số Preontent và PostcontentThay đổi bố cục bảng bằng tham số #The command below will get the name of the computer
$ComputerName = " |