Windows Powershell Serisi-II
Merhabalar,
Powershell serisinin bu ikinci bölümünde ise ç?tam?z? biraz daha yükseltiyor olaca??z. Alias kullan?m?, de?i?ken kullan?m? ve kullanici etkile?imi sayesinde hem daha dinamik hem de daha h?zl? çözümlere ula?abilece?iz. Hadi ba?layal?m!
Bildi?imiz gibi Powershell içerisindeki komut birimleri (Command led ya da cmdled) genellikle GET, SET, NEW, ADD, REMOVE ?eklinde ba?larlar. Bu ?ekilde olmas? ö?renim kolayl??? da sa?lar. Çünkü örne?in GET komutlar? yaln?zca bilgi listelemeye yararken SET komutlar? bira konfigürasyon ya da ayar yapmak için kullan?l?r. Yine ayn? ?ekilde e?er Get-Data komutunu kullanmay? biliyorsan?z Set-Date konusunu ö?renmeniz çok ama çok kolay olacakt?r.
Öncelikle yard?m konumuzu biraz daha geni?letelim. Örne?in bütün GET komutlar?n? listelemek istedi?imizde ?u komutu kullanabiliriz:
- Get-Command –Verb GET
Ayn? örne?i; SET, ADD, REMOVE vs.. için de kullanabilirsiniz. Bak?ld???nda asl?nda GET fiili ile ba?layan bütün komutlar listelenmektedir.
Peki spesifik bir ayar ile ilgili komutlar? listelemek istedi?imde ne yapmal?y?m? Bakal?m!
- Get-Command –Noun DATE
Bu komut ile de yaln?zca tarih ve tarih ayarlar? ile ilgili komutlar listenecektir. Listelenen komutlar? da daha önce hat?rlayaca??m?z gibi
- Get-Help Get-komut_Ad? –full
?eklinde detayland?rabilir ve örneklendirerek ö?renebilirsiniz.
Yard?m konusunda son olarak bir komuttan daha bahsetmek istiyorum. Örne?in Pipelining kullan?m? hakk?nda yard?m almak istiyorum. Bu durumda çok basit bir ?ekilde;
- Get-Help about_pipe
komutunu çal??t?rabilir ve varsa pipe* konu/konular?ndaki yard?m içeri?ine ulasabilirsiniz.
Alias Kullan?m?:
Powershell üzerinde i?lerinizi kolayla?t?racak bir sürü unsur bulunur. Bunlardan bir tanesi de komutlar?n?z? k?saltmaya yarayan Alias’lard?r. Alias’lar varsay?lan olarak Powershell kuruldu?unda aktif haldedirler. En çok kullan?lan bir çok komut Alias’lar ile zaten k?salt?lm??lard?r. ?stenirse kullanicilar da istedikleri ba?ka komutlar? Alias olarak k?sa isimlerle tan?mlay?p kullanabilirler. Alias’lar?n ve kar??l?k geldikleri komutlar?n listesini görebilmek için:
- Get-Alias
komutu Kullan?l?r.
Yukar?daki listede de görülece?i gibi örne?in AC ya da Add-Content
koumtlar? asl?nda ayn? komuta kar??l?k gelmektedir. AC burada Alias olarak kullan?lmakta ve Add-Content
komutunun k?salt?lm?? hali olarak konumland?r?lmaktad?r.
Sizler de kendi istedi?iniz ve s?k kulland???n?z komutlar? a?a??daki ?ekilde konfigüre edebilirsiniz:
- New-Alias onur Get-Date
Yukar?daki örnekte Onur ad?nda bir Alias olu?turulmakta ve Get-Date komutuna k?sayol olarak yap?land?r?lmaktad?r.
Her dizimizin sonunda olaca?? gibi bu bölümü de sorularla sonland?rmak istiyorum. Yarar? olaca??n? dü?ündü?üm pratik komutlar?m?za bir bakal?m!
- Powershell ekran arkaplan ya da yaz? rengini komut ile de?i?tirebilir miyim?
Elbette! J
- $Host.UI.RawUI.ForegroundColor = “Yellow”
- $Host.UI.RawUI.BackgroundColor = “Red”
- Ekrana 1’den 20’ye kadar rakamlar? bir ç?rp?da yazd?rmak istiyorum. Bunun kolay bir yolu var m?d?r?
Elbette! J
- 1..20 (Ba?ka rakam da kullanabilirsiniz J)
- Komut sat?r?ndan (cmd.exe) bir powershell script’ini (.ps1) çal??t?rabilir miyim?
Neden olmas?n! J
cmd.exe /c c:Windowssystem32windowspowershellv1.0powershell.exe -command “& c:ScriptsBakiOnur.ps1”
- Çal??an spesifik bir uygulamaya ait detaylar? (örnek notepad) Get–Process notepad
ile görebilece?imi biliyorum. Peki sadece Physical Memory kullan?m?n? nas?l görüntüleyebilirim?
- (Get-process notepad).PM
- Powershell’de varsay?lan olarak tan?mlanm?? de?i?kenler hangileridir ve ne i?e yararlar?
Bu default de?i?kenleri ileriki bölümlerde gerektikçe kullan?yor olaca??z.
Her dizinin sonunda yer verdigim bu soru– cevap bölümünde sunulan yan?tlar?n ve örneklerin sizlere kendi isteklerinizi sorgulayabilmeniz için örnek olu?turmas? çok önemli. Lütfen bu örnekleri kendinize göre de?i?tirip farkl? biçimlerde deneyiniz. Bu sayede Powershell’in ne kadar zevkli oldugunu görecek ve kendi çözümlerinizi olu?turabileceksiniz. J
Dizimizin bir sonraki bölümünde görü?mek üzere, ho?çakal?n.
Baki Onur OKUTUCU