Bạn có thể viết mã html trong powershell không?
Tìm hiểu cách sử dụng ConvertTo-HTML đúng cách để tạo các báo cáo HTML có định dạng tốt, nhiều phần – nhưng sau đó hãy tiến xa hơn với mô-đun EnhancedHTML tùy chỉnh. Tạo các báo cáo đẹp, được mã hóa bằng màu sắc, năng động, nhiều phần một cách dễ dàng và nhanh chóng. Bởi Don Jones Show
Hướng dẫn này được phát hành theo Creative Commons Attribution-NoDerivs 3. 0 Giấy phép chưa chuyển đổi. Các tác giả khuyến khích bạn phân phối lại tệp này rộng rãi nhất có thể, nhưng yêu cầu bạn không sửa đổi tài liệu Lấy mã Bạn có thể tìm thấy mô-đun EnhancedHTML2 được đề cập trong cuốn sách này tại https. //www. thư viện quyền lực. com/gói/Nâng caoHTML2/. Trang đó bao gồm các hướng dẫn tải xuống. Cần có PowerShellGet và có thể lấy từ PowerShellGallery. com Cuốn sách này có hữu ích không? Kiểm tra cập nhật. Sách điện tử của chúng tôi thường được cập nhật với nội dung mới và sửa chữa. Chúng tôi cung cấp chúng theo ba cách GitBook và LeanPub có đầu ra định dạng PDF hơi khác nhau, vì vậy bạn có thể chọn định dạng bạn thích. LeanPub cũng có thể thông báo cho bạn khi chúng tôi đẩy mạnh các bản cập nhật. Kho lưu trữ GitHub chính của chúng tôi là có thẩm quyền; . GitBook thường sẽ chứa phiên bản mới nhất của chúng tôi, bao gồm cả những phần chưa hoàn thành; Khái niệm cơ bản về báo cáo HTMLTrước tiên, hãy hiểu rằng PowerShell không bị giới hạn trong việc tạo báo cáo trong HTML. Nhưng tôi thích HTML vì nó linh hoạt, có thể dễ dàng gửi qua e-mail và có thể dễ dàng làm cho trông đẹp mắt hơn so với một báo cáo văn bản thuần túy. Nhưng trước khi đi sâu vào, bạn cần biết một chút về cách thức hoạt động của HTML Một trang HTML chỉ là một tệp văn bản thuần túy, trông giống như thế này
1 2
Đó được gọi là Cascading Style Sheet hoặc CSS. Có một vài điều thú vị để rút ra từ điều này Tôi đã nhét các thuộc tính kiểu dáng vào một chuỗi ở đây và lưu trữ nó trong biến $style. Điều đó sẽ giúp bạn dễ dàng tham khảo điều này sau này Lưu ý rằng tôi đã xác định kiểu dáng cho một số thẻ HTML, chẳng hạn như H1, H2, BODY và TH. Các định nghĩa kiểu đó liệt kê tên thẻ mà không có dấu chấm trước hoặc dấu thăng. Bên trong dấu ngoặc nhọn, bạn xác định các thành phần kiểu dáng mà bạn quan tâm, chẳng hạn như kích thước phông chữ, căn chỉnh văn bản, v.v. Các thẻ như H1 và H2 đã có các kiểu được xác định trước do trình duyệt của bạn đặt, chẳng hạn như kích thước phông chữ của chúng; Phong cách cũng kế thừa. Toàn bộ nội dung của trang HTML được chứa trong các thẻ, do đó, bất cứ điều gì bạn gán cho thẻ BODY trong CSS cũng sẽ áp dụng cho mọi thứ trong trang. Cơ thể của tôi thiết lập một họ phông chữ và một màu phông chữ; Bạn cũng sẽ thấy các định nghĩa về phong cách đứng trước dấu chấm. Đó được gọi là phong cách lớp học, và tôi đã tạo ra chúng từ không khí mỏng. Đây là những mẫu kiểu có thể tái sử dụng có thể được áp dụng cho bất kỳ thành phần nào trong trang. Các ". phân trang” thực sự được sử dụng bởi JavaScript mà tôi sử dụng để tạo các bảng động; Chú ý đến. số lẻ,. thậm chí, và. màu đỏ trong CSS. Tôi hoàn toàn bịa ra những thứ đó và bạn sẽ thấy tôi sử dụng chúng sau một chút 0 Sáu hàm trước không làm gì khác ngoài truy xuất dữ liệu từ một máy tính (lưu ý rằng tham số -ComputerName của chúng được xác định là 3, chấp nhận một giá trị, thay vì 4 sẽ chấp nhận nhiều giá trị). Nếu bạn không thể tìm ra cách thức hoạt động của những thứ này… có lẽ bạn cần lùi lại một chút Đối với mục đích định dạng trong cuốn sách này, bạn sẽ thấy tôi sử dụng ký tự đánh dấu phía sau (chẳng hạn như sau 5). Điều đó thoát khỏi việc xuống dòng ngay sau nó, biến nó thành một loại ký tự tiếp tục dòng. Tôi chỉ ra nó bởi vì nó rất dễ bỏ lỡ, là một nhân vật nhỏ bé như vậy 1 Phần trên bắt đầu phần chính của tập lệnh demo của tôi. Nó lấy bất kỳ tên máy tính nào được chuyển đến tham số 6 của tập lệnh và duyệt qua từng tên một. Nó đang thực hiện cuộc gọi tới 7 như một cuộc thử nghiệm - nếu điều này không thành công, tôi không muốn làm bất cứ điều gì với tên máy tính hiện tại. Phần còn lại của tập lệnh chỉ chạy nếu cuộc gọi WMI đó thành công 2 Hãy nhớ rằng tham số khác của tập lệnh này là 8. Tôi đang sử dụng 9 để kết hợp 40 với tên tệp. 9 đảm bảo đúng số dấu gạch chéo ngược, để nếu 8 là “C. ” hoặc “C. \” Tôi sẽ nhận được đường dẫn tệp hợp lệ. Tên tệp sẽ là tên máy tính hiện tại, theo sau là. phần mở rộng tên tệp html 3 Đây là lần đầu tiên tôi sử dụng mô-đun EnhancedHTML2. Đoạn ConvertTo-EnhancedHTMLFragment. Chú ý những gì tôi đang làm
4 Đó là một ví dụ rất giống, cho phần thứ hai của báo cáo của tôi 5 OK, đó là một ví dụ phức tạp hơn. Hãy xem các tham số tôi đang cung cấp cho ConvertTo-EnhancedHTMLFragment
6 Nhiều điều tương tự trong hai ví dụ trên, chỉ với một tham số mới. -MakeHiddenSection. Điều này sẽ làm cho phần đó của báo cáo bị thu gọn theo mặc định, chỉ hiển thị chuỗi -PreContent. Nhấp vào chuỗi sẽ mở rộng và thu gọn phần báo cáo Lưu ý quay lại CSS của tôi rằng, đối với lớp. sectionHeader, tôi đặt con trỏ thành biểu tượng con trỏ và làm cho văn bản của phần có màu đỏ khi di chuột qua nó. Điều đó giúp gợi ý cho người dùng rằng có thể nhấp vào tiêu đề phần. Mô-đun EnhancedHTML2 luôn thêm lớp CSS “tiêu đề mục” vào -PreContent, do đó, bằng cách xác định “. tiêu đề mục” trong CSS của mình, bạn có thể tạo kiểu thêm cho tiêu đề mục 7 Không có gì mới trong đoạn trích trên, nhưng bây giờ chúng tôi đã sẵn sàng để lắp ráp HTML cuối cùng 8 Cả mã không ghi chú và mã nhận xét đều làm điều tương tự. Cái đầu tiên, không ghi chú, đặt đường dẫn tệp cục bộ cho hai tệp JavaScript bắt buộc. Người nhận xét không chỉ định các tham số đó, do đó, HTML cuối cùng mặc định lấy JavaScript từ Mạng phân phối nội dung dựa trên web (CDN) của Microsoft. Trong cả hai trường hợp
Kết quả cuối cùng được đưa ra đường dẫn tệp tôi đã tạo trước đó. Kết quả hình ảnh004. pngTôi có hai phần bị sập cuối cùng. Lưu ý rằng danh sách quy trình được phân trang, với các nút Trước/Tiếp theo và lưu ý rằng đĩa trống 80% của tôi được đánh dấu màu đỏ. Các bảng hiển thị 10 mục theo mặc định, nhưng có thể được làm lớn hơn và chúng cung cấp hộp tìm kiếm tích hợp. Tiêu đề cột có thể nhấp được cho mục đích sắp xếp Thành thật mà nói, tôi nghĩ nó khá tuyệt vời Kết hợp Báo cáo HTML và Ứng dụng GUITôi đã có một số người đặt câu hỏi trong các diễn đàn tại PowerShell. org, với chủ đề "làm cách nào tôi có thể sử dụng RichTextBox trong ứng dụng GUI của Windows để hiển thị dữ liệu được định dạng đẹp mắt?" . Sử dụng HTML thay thế. Ví dụ: giả sử bạn đã làm theo các ví dụ trong chương trước và tạo ra một báo cáo HTML đẹp mắt. Hãy nhớ rằng báo cáo sẽ nằm “trong bộ nhớ”, không phải trong tệp văn bản, cho đến khi kết thúc 9 Để minh họa, giả sử nó hiện nằm trong một tệp có tên C. Báo cáo. html. Tôi sẽ sử dụng PowerShell Studio 2012 của SAPIEN để hiển thị báo cáo đó trong GUI, thay vì bật nó lên trong trình duyệt Web. Ở đây, tôi đã bắt đầu một dự án dạng đơn, đơn giản. Tôi đã thay đổi văn bản của biểu mẫu thành “Báo cáo” và tôi đã thêm một điều khiển WebBrowser từ hộp công cụ. Điều khiển đó tự động điền vào toàn bộ biểu mẫu, điều này thật hoàn hảo. Tôi đặt tên cho điều khiển WebBrowser là “web”, giúp nó có thể truy cập được từ mã thông qua biến $web Tôi sẽ lưu ý rằng PowerShell Studio 2012 đã lỗi thời vào thời điểm này, nhưng bạn vẫn nên nắm được ý tưởng chung hình ảnh006. pngTôi hy vọng bạn sẽ tạo một biểu mẫu như phần này của một dự án tổng thể lớn hơn, nhưng tôi chỉ tập trung vào cách thực hiện điều này một chút. Vì vậy, tôi sẽ tải báo cáo vào điều khiển WebBrowser khi biểu mẫu này tải 0 Bây giờ tôi có thể chạy dự án hình ảnh007. pngTôi nhận được một hộp thoại bật lên đẹp mắt hiển thị báo cáo HTML. Tôi có thể thay đổi kích thước, thu nhỏ, phóng to và đóng bằng các nút tiêu chuẩn trên thanh tiêu đề của cửa sổ. Dễ dàng và chỉ mất 5 phút để tạo Nếu bạn đang gặp sự cố, muốn làm điều gì đó và không thể tìm ra cách thực hiện, tìm thấy lỗi và muốn đưa ra cách khắc phục hoặc chỉ cần có phản hồi về hướng dẫn này hoặc mô-đun EnhancedHTML, thì tôi rất mong nhận được phản hồi từ bạn Cách đơn giản nhất là đăng lên diễn đàn “Hỏi Đáp Chung” trên http. // powershell. tổ chức/diễn đàn/. Tôi theo dõi khá kỹ điều đó và tôi sẽ trả lời ngay khi có thể Thỉnh thoảng hãy kiểm tra lại để đảm bảo rằng bạn đã có phiên bản mới nhất của hướng dẫn này và mã của nó PowerShell có thể đọc HTML không?Bước đầu tiên của bạn là đưa một số mã HTML vào trình bao. Để làm điều đó, bạn sẽ yêu cầu PowerShell truy xuất một trang từ máy chủ web, giống như cách trình duyệt web sẽ thực hiện tác vụ tương tự. PowerShell sẽ không vẽ hoặc hiển thị trang nhưng sẽ cho phép bạn làm việc với HTML thô .
Tôi có thể sử dụng PowerShell để phát triển web không?PowerShell cấp cho bạn quyền truy cập vào hệ thống tệp trên máy tính, cho phép bạn thực hiện các yêu cầu máy chủ, v.v. Tuy nhiên, hướng dẫn chạy các tác vụ phát triển thường chỉ được cung cấp cho MacOS và Linux . Để hỗ trợ người dùng Windows, hướng dẫn này trình bày cách thực hiện các tác vụ phát triển web phổ biến bằng PowerShell.
PowerShell có thể tương tác với các trang web không?PowerShell và Nội dung Web. PowerShell có một số cách để lấy dữ liệu từ một nguồn trên web, có thể là trang web bình thường hoặc API REST. Có sẵn hai lệnh ghép ngắn để thực hiện các yêu cầu web và PowerShell tất nhiên cũng có quyền truy cập vào mọi thứ .
Tôi có thể viết mã trên Windows PowerShell không?Ngoài ra, bạn có thể sử dụng bảng điều khiển PowerShell ISE tích hợp để viết mã tập lệnh của mình trên Windows 10 . Môi trường tập lệnh tích hợp là một công cụ nâng cao, nhưng bạn có thể bắt đầu sử dụng các bước sau. Mở bắt đầu. Tìm kiếm Windows PowerShell ISE, bấm chuột phải vào kết quả trên cùng và chọn tùy chọn Chạy với tư cách quản trị viên. |