0

PowerShell EnhancedHTML2 Modulü Kullanımı – Bölüm 1. Önceki iki makalemde PowerShell ile birlikte gelen ConvertTo-HTML fonksiyonunu derinlemesine ele almıştım. Bu seride ise Cloud and Datacenter MVP’si Don Jones’un oluşturduğu EnhancedHTML2 modülünü ve özelliklerini anlatacağım. EnhancedHTML2 modülü temel olarak default olarak gelen ConvertTo-HTML komutu ile aynı özelliklere sahip olsada görsel bakımdan oldukça gelişmiş özelikler sunuyor. Default olarak gelen komutta olduğu gibi CSS dosyalarını kullanmanın yanında JQuery ve JQuery Datatable bileşenlerini de HTML dosya oluştururken kullanabiliyor.

EnhancedHTML2 şu anda Powershell Gallery üzerinde yayınlanmış durumda ve Powershell Get kullanarak aşağıdaki komut yardımı ile kolaylıkla makinenize indirip import edebilirsiniz.

#Import Advanced HTML Module

Install-Module -Name EnhancedHTML2


Resim-1

Modulü import etme işleminin ardından basit fonksiyonlar kullanıp anlatımımıza başlayabiliriz.

İlk olarak Enhanced HTML modülü html çıktısını table ve list olmak üzere iki farklı tipte oluşturur. Çıktının hangi tipte olduğunu belirlemek için –As parametresini kullanıp table yada list değişkeninin atanması gerekir.

Bu bilginin ışığında aynı komutu kullanıp list ve table olarak farklı değişkenlere atama yapıp farkı gözlemleyelim (Burada da default olarak yaptığımız fragment işleminin benzeri olarak ConvertTo-EnhancedHTMLFragment cmdlet’ini kullanarak HTML fragment oluşturuyoruz.)

$Bios = Get-WmiObject -class Win32_BIOS | Select PSComputerName, Manufacturer, BIOSVersion |ConvertTo-EnhancedHTMLFragment -As List

$Bios2 = Get-WmiObject -class Win32_BIOS | Select PSComputerName, Manufacturer, BIOSVersion |ConvertTo-EnhancedHTMLFragment -As Table

Bu işlemin ardından değişkenlere kaydettiğimiz HTML fragment’leri kullanarak HTML dosyasını oluşturalım.

ConvertTo-EnhancedHTML -HTMLFragments $Bios,$Bios2 -CssUri C:\Users\firat.yasar\Desktop\ArticleTest\styles2.css | Out-File AsExample.html

HTML dosyasını kontrol ettiğimizde aşağıdaki gibi aynı data’ları hem list hem de table olarak görüntüleyebiliriz.


Resim-2

Bu özellik default olarak gelen ConvertTo-HTML cmdlet’inde olmayan ve bence oldukça kullanışlı bir parametredir. Böylece oluşturduğumuz HTML çıktılar sadece tablo olarak değil liste olarakda konfigüre edilebilir.

Tabi burada HTML dökümanını tarayıcıda açtığımızda list ve table‘a ait başlık bilgisinin bulunmadığını görmekteyiz. Verdiğimiz bilgilerin hangi class’a yada veri kaynağına ait olduğunu yazmamış raporlar açısından daha şık olacaktır.

Bu amaçla table ve list öğelerini oluştururken komuta başlık bilgisini de değişken olarak atamamız gerekir. Bu amaçla komutu aşağıdaki gibi düzenleyebiliriz.

$TitleContent1 = “<h2> Bios Info(As a List) </h2>”

$TitleContent2 = “<h2> Bios Info(As a Table) </h2>”

$Bios = Get-WmiObject -class Win32_BIOS | Select PSComputerName, Manufacturer, BIOSVersion | ConvertTo-EnhancedHTMLFragment -As List -PreContent $TitleContent1

$Bios2 = Get-WmiObject -class Win32_BIOS | Select PSComputerName, Manufacturer, BIOSVersion | ConvertTo-EnhancedHTMLFragment -As Table -PreContent $TitleContent2

ConvertTo-EnhancedHTML -HTMLFragments $Bios,$Bios2 -CssUri C:\Users\firat.yasar\Desktop\ArticleTest\styles2.css | Out-File PreExample.html

Komutların ardından html dosyası browser ile açıldığında şekilde görüldüğü gibi table ve list öğeleri öncesinde başlıklar bulunacaktır.


Resim-3

Not: Başlıkların büyüklükleri HTML sayfada Center yada Left konumunda olmalarını etkileyecektir. Precontent bilgisini <h1></h1> tagları arasında paylaşırsanız başlık aşağıdaki gibi büyük ve merkezi lokasyonunda bulunacaktır.


Resim-4

Umalım herkes için faydalı olmuştur. Şimdilik bu kadar. Bir sonraki bölümde Dynamic Table ve Hidden Senction özellikleri ile devam edeceğim.

Görüşmek üzere.

 

Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

www.mshowto.org

https://www.powershellgallery.com/packages/EnhancedHTML2/2.1

TAGs: powershell, powershell ve HTML, powershell ile HTML tablo oluşturma, powershell convertto-html kullanımı, powershell ve css, powershell HTML report, powershell ile raporlama,powershell ile html rapor oluşturma, convertto-html ile fragment, powershell ile multi-senction html oluşturma, powershell v3,Powershell EnhancedHTML2,Powershell HTML Table,Powershell HTML list,Enhanced HTML2 özellikleri,Powershell HTML Dynamic Table,Powershell HTML Hidden Senction

Bu İçeriğe Tepkin Ne Oldu?
  • 0
    harika_
    Harika!!
  • 0
    be_enmedim
    Beğenmedim
  • 0
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 0
    olmad_
    Olmadı!
  • 0
    k_zd_m_
    Kızdım!

Sakarya doğumludur. İstanbul Üniversitesi’nde Matematik/Fen ve Teknoloji öğretmenliğini bitirmiştir. Yüksek lisansını Sakarya Üniversitesi Bilgisayar Mühendisliği’nde yapmıştır. Bilişim sektöründe çeşitli firmalarda sistem ve network sorumlusu olarak çalışmıştır. Bazı kurumlarda sistem ve network üzerine uzmanlık eğitimleri vermiştir. Şu anda Netaş şirketinde kurumsal danışman olarak görev yapmaktadır. Microsoft System Center ürünleri, Powershell ve Azure teknolojileri ile ilgilenmektedir. 2016 yılında Microsoft tarafından Cloud and Datacenter alanında MVP unvanını almıştır.

Yazarın Profili

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir