Chuyển sang html
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ụ mờ 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 được trình bày dưới dạng báo cáo. Nhưng các báo cáo trong 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
Nội dung chính Hiển thị Không phải là một người đọc? Không xem được video? 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. 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 trình bày của bạn 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 hạ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 sẽ khám phá ra bản cơ bản cho CSS và làm thế nào để nó có thể hữu ích trong đị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ảng cục bộ bằng tham sốTăng cường báo cáo bằng CSS Sử dụng ID HTML và các lớp thuộc tính trong CSS
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ó ý kiến theo dõi, hãy chắc chắn rằng bạn có những đ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 Xuấ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ảng cục bộ bằng tham số
Tăng cường báo cáo bằng CSS 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; . Để hợp nhất thông tin đúng nhất trong một báo cáo HTML duy nhất, hãy sử dụng tham số 8 để chỉ nhận bảng mã HTML được tạo bởi 8 CMDletNhư 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 8Khi bạn sử dụng tham số 8, PowerShell chỉ tạo bảng HTML phần tử. Các yếu tố 4, 5, 6, 7 và các yếu tố khác bị bỏ qua. Bâ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ệnhCá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. Update file command with after code 7Chạy kịch bản trong bảng điều khiển PowerShell. Bạn có thể xem đầu ra của báo cáo như hình dưới đây Thêm nhãn bằng tham số # Lệnh dưới đây sẽ lấy thông tin Hệ điều hành, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ vào một biến $OSinfo = Get-CimInstance -Class Win32_OperatingSystem. ConvertTo-Html -Property Version,Caption,BuildNumber,Nhà sản xuất -Fragment # Lệnh bên dưới sẽ lấy thông tin Bộ xử lý, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $ProcessInfo = Get-CimInstance -ClassName Win32_Processor. ConvertTo-Html -Property DeviceID,Name,Caption,MaxClockSpeed,SocketDesignation,Nhà sản xuất -Fragment # Lệnh bên dưới sẽ lấy thông tin BIOS, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $BiosInfo = Get-CimInstance -ClassName . ConvertTo-Html -Property SMBIOSBIOSVersion,Production,Name,SerialNumber -Fragment # Lệnh dưới đây sẽ lấy thông tin chi tiết của Disk, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $DiscInfo = Get-CimInstance -ClassName Win32_LogicalDisk -Filter . ConvertTo-Html -Property DeviceID,DriveType,ProviderName,VolumeName,Size,FreeSpace -Fragment #Lệnh bên dưới sẽ lấy thông tin 10 dịch vụ đầu tiên, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $ServicesInfo = Get-CimInstance - . Chọn-Đối tượng -Đầu tiên 10. ConvertTo-Html -Property Name,DisplayName,State -Fragment # Lệnh bên dưới sẽ kết hợp tất cả thông tin được thu thập vào một báo cáo HTML duy nhất $Report = ConvertTo-HTML -Body "$ComputerName $OSinfo $ProcessInfo $BiosInfo $DiscInfo $ServicesInfo" - . Out-File. \Basic-Máy tính-Thông tin-Báo cáo. html4 và #Lệnh bên dưới sẽ lấy thông tin Hệ điều hành, chuyển kết quả sang mã HTML dưới dạng bảng và lưu vào một biến $OSinfo = Get-CimInstance -Class Win32_OperatingSystem. ConvertTo-Html -Property Version,Caption,BuildNumber,Nhà sản xuất -Fragment # Lệnh bên dưới sẽ lấy thông tin Bộ xử lý, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $ProcessInfo = Get-CimInstance -ClassName Win32_Processor. ConvertTo-Html -Property DeviceID,Name,Caption,MaxClockSpeed,SocketDesignation,Nhà sản xuất -Fragment # Lệnh dưới đây sẽ lấy thông tin BIOS, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $BiosInfo = Get-CimInstance -ClassName . ConvertTo-Html -Property SMBIOSBIOSVersion,Production,Name,SerialNumber -Fragment # Lệnh dưới đây sẽ lấy thông tin chi tiết của Disk, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $DiscInfo = Get-CimInstance -ClassName Win32_LogicalDisk -Filter . ConvertTo-Html -Property DeviceID,DriveType,ProviderName,VolumeName,Size,FreeSpace -Fragment # Lệnh bên dưới sẽ lấy thông tin 10 dịch vụ đầu tiên, chuyển đổi kết quả thành mã HTML dưới dạng bảng và lưu trữ nó vào một biến $ServicesInfo = Get-CimInstance - . Chọn-Đối tượng -Đầu tiên 10. ConvertTo-Html -Property Name,DisplayName,State -Fragment # Lệnh bên dưới sẽ kết hợp tất cả thông tin được thu thập vào một báo cáo HTML duy nhất $Report = ConvertTo-HTML -Body "$ComputerName $OSinfo $ProcessInfo $BiosInfo $DiscInfo $ServicesInfo" - . Out-File. \Basic-Máy tính-Thông tin-Báo cáo. 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ố 74 và 75, 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áoTham số 74 Chỉ định văn bản để bổ sung trước thẻ mở 79 và tham số 75 chỉ định văn bản để bổ sung sau khi đóng thẻ 61. 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ử HTMLCậ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 Dưới đây là những thay đổi trong tập lệnh
6Bạn có thể thấy 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 Thay đổi bố cục bảng bằng tham số #The command below will get the name of the computer $ComputerName = "Computer name: $env:computername" #The command below will get the Operating System information, convert the result to HTML code as table and store it to a variable $OSinfo = Get-CimInstance -Class Win32_OperatingSystem | ConvertTo-Html -Property Version,Caption,BuildNumber,Manufacturer -Fragment -PreContent "Operating System Information" #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 -PreContent "Processor Information" #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 -PreContent "BIOS Information" #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 -PreContent "Disk Information" #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 -PreContent "Services Information" #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" -PostContent "Creation Date: $(Get-Date) " #The command below will generate the report to an HTML file $Report | Out-File .\Basic-Computer-Information-Report.html8 Có thể, bảng HTML được tạo có nhiều cột và bạn muốn thay đổi định dạng để hiển thị giá trị đúng dưới dạng danh sách, bạn có thể sử dụng tham số 68. Theo mặc định, khi bạn dẫn đầu đến ____050, PowerShell sẽ tạo ra một bảng HTML giống với bảng định dạng Windows PowerShellNhư bạn có thể thấy trong ảnh chụp màn hình bên dưới, bảng tiêu đề hiển thị tên thuộc tính như phiên bản, chú thích, số xây dựng và nhà sản xuất và mỗi hàng bảng đại diện cho một đối tượng và hiển thị các đối tượng Để thay đổi bố cục của bảng thành danh sách, hãy sử dụng tham số 51 after that was theo sau bởi danh sách. PowerShell tạo bảng HTML hai cột cho mỗi đối tượng giống với định dạng danh sách Windows PowerShell. Cột đầu tiên hiển thị các tên thuộc tính như phiên bản, chú thích, số xây dựng và nhà sản xuất và cột thứ hai hiển thị giá trị thuộc tínhTừ các ví dụ trên, bây giờ bạn có ý tưởng về cách thay đổi bố cục của bảng, hãy áp dụng tham số 68 trong tập lệnh của chúng tôi để thay đổi bố cục tổng thể của hệ điều hành, bộ xử lý, BIOS và bảng thông tin đĩa thành định dạng liệt kêUpdate file command with here code. Bản có tham số 51 trong các dòng lệnh cho hệ điều hành, bộ xử lý, BIOS và đĩa. 5Sau khi áp dụng tham số 51, báo cáo phải được cập nhật như hình dưới đây. Bảng cục bộ cho hệ điều hành, bộ xử lý, BIOS và thông tin đĩa đã được thay đổi thành danh sáchTăng cường báo cáo bằng CSSHãy cùng gửi báo cáo lên cấp độ tiếp theo và bắt đầu thêm thiết kế bằng CSS. CSS được sử dụng để kiểm tra cách báo cáo HTML sẽ xem xét trong trình duyệt web. CSS kiểm tra các phông chữ, văn bản, màu sắc, nền, lề và bố cục. Ở cuối phần này, bạn sẽ có thể xem báo cáo sẽ chuyển đổi từ định dạng đơn giản sang phong phú bằng CSS Có ba cách để áp dụng CSS trong HTML như nội tuyến, nội bộ và bên ngoài. Đối với bài viết này, bạn sẽ áp dụng phương thức nội bộ bằng tham số 55 in report HTMLTham số 55 only content of tag 5. Thẻ 5 là một phần của cấu trúc HTML nơi bạn đặt mã cho CSS. Như bạn có thể thấy trong ảnh chụp màn hình bên dưới thẻ 59 đã được bao gồm khi mã HTML được tạo bởi màn hình 8Bây giờ, hãy sử dụng CSS để định dạng báo cáo HTML. Đầu tiên, sao chép mã bên dưới và dán nó vào đầu tệp lệnh. Mã CSS được gán trong biến 71 sẽ thay đổi định dạng của các văn bản trong báo cáo được đặt trong thẻ 63. 7Tiếp theo, sử dụng tham số 55 và gán biến 71. Cập nhật tập lệnh bằng cách sử dụng mã bên dưới. 2Khi bạn chạy tập lệnh, báo cáo sẽ được cập nhật như hiển thị bên dưới. Lưu ý rằng phần tử HTML duy nhất bị ảnh hưởng là 63 được áp dụng cho nhãn máy tính của Cameron. Các bước trên là một ví dụ tuyệt vời về cách bạn có thể kiểm tra giám sát hoặc điều khiển thiết kế của báo cáo HTML bằng CSSĐể thêm thiết kế vào các bảng và nhãn khác được đặt trong thẻ 63 trong báo cáo, tiếp tục cập nhật biến ______471 với mã CSS bên dưới. 6Sau khi cập nhật và chạy tập lệnh, báo cáo phải được định dạng như dưới đây - nhờ CSS, giờ đây nó rất hấp dẫn và trông chuyên nghiệp Sử dụng ID HTML và các lớp thuộc tính trong CSSCác phần tử HTML là các khối xây dựng của toàn bộ báo cáo HTML của bạn, CSS sử dụng các yếu tố này do bộ chọn để biết nên áp dụng phong cách ở đâu. Từ ví dụ trước, mã CSS đã được áp dụng cho phần tử HTML ________ 78, ________ 78 và 20 trong báo cáo. Nhưng nếu bạn cần áp dụng các cách khác nhau trên các yếu tố khác nhau? . Khi thiết kế báo cáo HTML của bạn, bạn có thể sử dụng ID hoặc lớp để xác định một phần tử
Vui lòng áp dụng các thuộc tính ID và lớp trong báo cáo HTML. Như bạn có thể thấy trong đoạn mã bên dưới nhãn ngày tạo được đặt trong thẻ 67. 0Khi báo cáo được tạo và xem trong trình duyệt, nhãn ngày sáng tạo được định dạng như dưới đây Để định dạng nhãn ngày tạo bằng thuộc tính ID - First, hãy gán tên ID ‘CreationDate‘ cho 67 Thẻ. Tên ID nên được đặt bên trong thẻ bắt đầu. Mã cập nhật được hiển thị bên dưới đây. 1Thứ hai, tạo mã CSS mới cho định dạng nhãn ngày tạo. Use symbol 23 theo sau là tên ID khi khai báo ID trong CSS. Thêm mã CSS bên dưới trong biến 71 sau đó lưu và chạy tệp lệnh trong bảng điều khiển PowerShell. 2Sau khi gán ID và tạo mã CSS mới nhắm mục tiêu thuộc tính ID của thẻ 67, báo cáo sẽ được cập nhật như hiển thị bên dướiPlease to apply thuộc tính lớp trong bảng thông tin dịch vụ. Sử dụng CSS thay đổi màu sắc của văn bản thành màu xanh lá cây ** khi giá trị của trạng thái đang chạy và sử dụng màu đỏ khi dừng giá trị Như đã đề cập trước đây, các lớp thuộc tính có thể được gán cho nhiều phần tử HTML. 26. Sử dụng phương thức_______527 của PowerShell, hãy gán tên lớp RunningStatus và StopStatus cho tất cả các thẻ 26 trong Bảng thông tin dịch vụ. Sử dụng các lệnh bên dưới và cập nhật tập lệnh. 3Add CSS code after here in the variable 71. Tất cả các thẻ có tên lớp RunningStatus sẽ có giá trị thập lục phân của ______560 & nbsp; . 4Save and run file command. Bảng thông tin dịch vụ trong báo cáo nên được cập nhật như hình bên dưới Dưới đây là bố cục cục bộ cuối cùng của báo cáo HTML được định dạng bằng CSS Dưới đây là các lệnh hoàn chỉnh để tạo html-báo cáo. ps1 5Kết luậnTrong bài viết này, bạn đã học cách chuyển đổi các đối tượng (kết quả) thành mã HTML và tạo chúng thành báo cáo HTML Tạo báo cáo cho định dạng HTML để bạn có khả năng áp dụng CSS giúp báo cáo dễ dàng hơn để tăng cường và thao tác. Có rất nhiều tài nguyên trực tuyến miễn phí mà bạn có thể sử dụng để nâng cao các kỹ năng thiết kế mã hóa HTML và CSS của mình Tôi hy vọng bài viết này cung cấp cho bạn đủ ý tưởng về cách bạn có thể tạo và cải thiện báo cáo HTML của bạn. chúc mừng |