
PowerShell Ms-Dos benzeri bir komut sistemidir ve Ms-Dos’tan çok daha gelişmiş bir platformdur , Ms-Dos yeterli esnekliğe sahip olmadigindan üst düzey kullanıcılari memnun etmiyordu bu nedenle Microsoft ,Windows PowerShell i ; Bilişim Teknolojileri uzmanları ve özellikle Sistem Programcıları için geliştirilmiştir bu bir komut satır kabuğu ve komut dilidir .Bu kabuk sayesinde sistem kontrolünü çok kolay ve etkin bir şekilde kullanabilmek mümkün. Şöyleki 130 civarında standart komut satırı ve tutarlı söz dizimi ve hizmet programları, script dili ve birçok özelliği sayesinde sistemi yönetmek ve otomasyonları hızlandırmak çok daha kolay. Windows 7 ve Server 2008’e entegre olarak gelen PowerShell’i Windows XP,Vista ve Server 2003 ‘te de kullanabilmek mümkün. Fakat öncelikle sisteminizde .NET Framework 2.0 veya daha üstü yüklü olması gerekmektedir. Buda demek oluyorki PowerShell ile .Net düzeyinde uygulamalarda geliştirilebilir. Gelelim nasil calistigina ve bir iki örnege
Arama bosluguna windows power yazip calistiralim ve Power shell imiz acilsin
win power
bütün mevcut Cmdletsleri verir (230 adet):
get-command
Komut hakkinda yardim /detayli bilgi verir
get-help get-command get-help get-command –detailed
En iyi Cmdlets
islemciniz hakkinda ayrintili bilgi
get-wmiobject win32_processor
sadece islemci ismini alalim
get-wmiobject win32_processor name
Grafik islemcimiz hakkinda bilgi alalim
get-wmiobject win32_videocontroller
Bios versionumuzu ögrenelim
get-wmiobject win32_bios
RAM hakkinda bilgi alalim
get-wmiobject win32_physicalmemory
RAm slotlarimiz ve üzerindeki RAm ler hakkinda bilgi
get-wmiobject win32_physicalmemory | format-table tag, banklabel, devicelocator, capacity
Hotfixleri görelim
get-hotfix
KB972270 kurulmusmu sorgulayalim
get-hotfix –id kb972270
Bütün güvenlik güncellemelerini döksün
get-hotfix –description security*
Bütün Updateleri html formatinda döktürelim
get-hotfix | select-object description, hotfixid | where-object {$_.description -ne ''} | convertto-html >hotfixliste.html
C:\Users\velociraptor (velociraptor yerine sizin kulanici adiniz gelecek) gidip hotfixliste.html ye gözatabilirsiniz
Windows Processes lere bir gözatalim
get-process | group-object {$_.name} | where-object {$_.count -gt 1}| foreach-object {get-process $_.name} | format-list name, path
Geri dönüsüm noktalarini görelim
get-computerrestorepoint
Temp datalarini silelim
get-childitem –recurse c:\*.tmp | remove-item
C deki deneme.txt i D:\yedek icine kopyalayalim
copy-item c:\deneme.txt D:\yedek
Dosya kopyalayalim c:\deneme klasörünü D:\yedek icine kopyalayalim
copy-item c:\deneme D:\yedek –recurse
c:\deneme.txt i D:\yedek icine Kes yapistir yapalim
move-item c:\deneme.txt D:\yedek
Dosya silelim
remove-item c:\test.txt
Klasör icerigini silelim
remove-item c:\texte\* -recurse
D:\history_en.txt de yeralan 5. satiri görüntületelim
(get-content d:\history_en.txt –totalcount 5)[-1]
D:\dns_jumper\deneme.txt icerisinde yeralan ilk 8 satiri D:\top100.txt diye export edelim
get-content D:\dns_jumper\deneme.txt -totalcount 8 | set-content D:\top100.txt
Baslangicta calisan programlarimizi görelim
get-itemproperty hklm:\software\microsoft\windows\currentversion\run
Kendi power shell scriptlerimizi olusturalim (mesela Notepad i kapatan bir script olusturalim)
aramaya asagidakini yazalim
windows powershell ise
sonrasinda asagidaki komutu verelim
get-process –name "notepad" | stop-process
ve kill_notepad.ps1 olarak kaydedelim , simdi bunu calistirma yetkimizi sinayalim , asagidaki komutu verelim
get-executionpolicy
Sonuc restricted ise bu scripti calistirma yetkniz yok demektir , simdi asagidaki komutu verin
set-executionpolicy unrestricted
ve Y yazarak onaylayin ve notepad i acip Powershelld de asagidaki komutu verin
& "C:\kill_notepad.ps1"
not: üstteki notepad i kapatma , örnek olarak verilmistir , calismayabilir
Velociraptor




