- Katılım
- 9 Ara 2024
- Mesajlar
- 12
- Tepkime puanı
- 6
- Puanları
- 3
PowerShell Rehberi
PowerShell, Windows işletim sisteminde komut satırı ve otomasyon işlemleri için kullanılan güçlü bir yönetim aracıdır. İlk bakışta CMD’ye benzese de PowerShell çok daha gelişmiş bir yapıya sahiptir. Sadece basit komutlar çalıştırmak için değil; sistem yönetimi, dosya işlemleri, servis kontrolü, ağ ayarları, otomasyon scriptleri, kullanıcı yönetimi ve sunucu işlemleri gibi birçok alanda kullanılabilir.
CMD daha çok klasik komut satırı işlemleri için kullanılırken, PowerShell nesne tabanlı çalışır. Bu da PowerShell’i özellikle sistem yöneticileri, yazılımcılar, teknik destek ekipleri ve ileri seviye Windows kullanıcıları için oldukça güçlü hale getirir. Ancak günlük kullanıcılar da temel PowerShell komutlarını öğrenerek bilgisayar hakkında bilgi alma, dosya arama, servis kontrolü ve bazı sorun giderme işlemlerini kolayca yapabilir.
Bu rehberde PowerShell nedir, CMD’den farkı nedir, nasıl açılır, temel komutlar nelerdir, hangi yararlı işlemler yapılabilir, script kullanırken nelere dikkat edilmeli ve en sık yapılan hatalar nelerdir sade şekilde anlatılacaktır.
PowerShell Nedir?
PowerShell, Microsoft tarafından geliştirilen bir komut satırı kabuğu ve betik dilidir. Windows üzerinde birçok yönetim işlemini komutlarla yapmayı sağlar. PowerShell ile dosya ve klasör yönetimi, servis kontrolü, işlem takibi, ağ bilgisi öğrenme, sistem raporu alma ve otomasyon işlemleri yapılabilir.
PowerShell’in en önemli farklarından biri nesne tabanlı çalışmasıdır. CMD komutları çoğunlukla metin çıktısı verirken, PowerShell komutları daha düzenli ve işlenebilir nesneler döndürebilir. Bu sayede komut çıktıları filtrelenebilir, sıralanabilir, başka komutlara aktarılabilir ve script içinde daha verimli kullanılabilir.
PowerShell ile yapılabilecek bazı işlemler:
PowerShell ile CMD Arasındaki Fark
PowerShell ve CMD benzer görünse de aralarında önemli farklar vardır. CMD daha eski ve daha basit bir komut satırı aracıdır. PowerShell ise daha modern, güçlü ve otomasyon odaklıdır.
CMD’de komutlar genellikle metin tabanlı çıktı verir. PowerShell ise komutlardan gelen verileri nesne olarak işler. Bu nedenle PowerShell’de filtreleme, sıralama, seçme ve dışa aktarma işlemleri daha gelişmiştir.
Temel farklar şöyle özetlenebilir:
PowerShell Nasıl Açılır?
PowerShell’i açmanın birkaç farklı yolu vardır. Windows sürümüne göre “Windows PowerShell” veya “Terminal” olarak görünebilir. Windows 11’de genellikle Terminal üzerinden PowerShell sekmesi açılır.
PowerShell açma yöntemleri:
Yönetici olarak açılan PowerShell’de dikkatli olunmalıdır. Çünkü sistem üzerinde değişiklik yapan komutlar doğrudan etkili olabilir. Ne yaptığı bilinmeyen komutlar rastgele çalıştırılmamalıdır.
Temel PowerShell Komutları
PowerShell’de komutlara genellikle “cmdlet” denir. Cmdlet yapısı çoğunlukla fiil-isim formatındadır. Örneğin Get-Process, çalışan işlemleri getirir. Get-Service, servisleri listeler. Bu isimlendirme ilk başta farklı görünse de zamanla oldukça anlaşılır hale gelir.
Temel PowerShell komutlarından bazıları:
Get-Process
Çalışan işlemleri listeler.
Get-Service
Windows servislerini gösterir.
Get-ChildItem
Bulunulan klasördeki dosya ve klasörleri listeler. CMD’deki dir komutuna benzer.
Set-Location
Klasör değiştirmek için kullanılır. CMD’deki cd komutuna benzer.
Clear-Host
Ekranı temizler.
Get-ComputerInfo
Bilgisayar hakkında detaylı sistem bilgisi verir.
Get-Date
Tarih ve saat bilgisini gösterir.
Get-Help
Komutlar hakkında yardım almak için kullanılır.
PowerShell öğrenirken Get-Help komutu oldukça faydalıdır. Bir komutun ne işe yaradığını, hangi parametreleri desteklediğini ve örnek kullanımlarını görmek için kullanılabilir.
Dosya ve Klasör İşlemleri
PowerShell ile dosya ve klasör yönetimi yapılabilir. Klasör listeleme, dosya kopyalama, taşıma, silme, yeniden adlandırma ve arama gibi işlemler komutlarla gerçekleştirilebilir.
Temel dosya ve klasör komutları:
Get-ChildItem
Dosya ve klasörleri listeler.
New-Item -ItemType Directory -Name "YeniKlasor"
Yeni klasör oluşturur.
Copy-Item "dosya.txt" "D:\Yedek"
Dosyayı belirtilen konuma kopyalar.
Move-Item "dosya.txt" "D:\Yedek"
Dosyayı belirtilen konuma taşır.
Remove-Item "dosya.txt"
Dosyayı siler.
Rename-Item "eski.txt" "yeni.txt"
Dosya veya klasör adını değiştirir.
Dosya silme komutları dikkatli kullanılmalıdır. Özellikle Remove-Item komutu yanlış kullanılırsa önemli dosyalar silinebilir. Yönetici PowerShell ekranında dosya işlemi yaparken hangi klasörde olduğunuzu kontrol etmek önemlidir.
Sistem Bilgilerini Öğrenme
PowerShell, bilgisayar hakkında detaylı bilgi almak için oldukça kullanışlıdır. İşletim sistemi, işlemci, bellek, BIOS, disk ve ağ bilgileri komutlarla görüntülenebilir.
Kullanılabilecek bazı komutlar:
Get-ComputerInfo
Sistem hakkında detaylı bilgi verir.
Get-CimInstance Win32_Processor
İşlemci bilgilerini gösterir.
Get-CimInstance Win32_PhysicalMemory
RAM bilgilerini gösterir.
Get-CimInstance Win32_BIOS
BIOS bilgilerini gösterir.
Get-Volume
Disk bölümlerini ve boş alan durumunu listeler.
Get-NetIPAddress
Ağ adaptörlerinin IP bilgilerini gösterir.
Bu komutlar teknik destek alırken veya bilgisayar donanımını kontrol ederken işe yarar. Özellikle sistem raporu çıkarmak isteyen kullanıcılar için PowerShell oldukça pratiktir.
Ağ İşlemleri ve İnternet Kontrolü
PowerShell ile ağ bağlantısı ve internet durumu kontrol edilebilir. IP adresi, DNS bilgileri, bağlantı testi ve ağ adaptörleri hakkında bilgi alınabilir.
Ağ kontrolünde kullanılabilecek komutlar:
Test-Connection google.com
Ping testi yapar. CMD’deki ping komutuna benzer.
Get-NetIPConfiguration
Ağ yapılandırmasını gösterir.
Get-DnsClientServerAddress
DNS sunucu adreslerini listeler.
Get-NetAdapter
Ağ adaptörlerini gösterir.
Resolve-DnsName google.com
Alan adı çözümlemesini test eder.
Test-NetConnection google.com -Port 443
Belirli bir adrese ve porta bağlantı testi yapar.
Özellikle Test-NetConnection komutu oldukça faydalıdır. Bir sunucunun belirli bir porttan erişilebilir olup olmadığını kontrol etmek için kullanılabilir. Örneğin web sunucusu, mail sunucusu veya uzak masaüstü bağlantısı testlerinde işe yarayabilir.
Servisleri Yönetme
Windows servisleri, arka planda çalışan sistem bileşenleridir. PowerShell ile servisleri listelemek, durumlarını görmek, başlatmak veya durdurmak mümkündür.
Servis komutları:
Get-Service
Tüm servisleri listeler.
Get-Service -Name "Spooler"
Belirli bir servisin durumunu gösterir.
Start-Service -Name "Spooler"
Belirli bir servisi başlatır.
Stop-Service -Name "Spooler"
Belirli bir servisi durdurur.
Restart-Service -Name "Spooler"
Belirli bir servisi yeniden başlatır.
Servis yönetimi dikkatli yapılmalıdır. Rastgele servis durdurmak Windows’un bazı özelliklerinin çalışmamasına neden olabilir. Örneğin ağ, güvenlik, yazdırma veya güncelleme servisleri bilinçsizce kapatılırsa sistemde sorunlar yaşanabilir.
Çalışan İşlemleri Görme ve Kapatma
PowerShell ile bilgisayarda çalışan işlemler görüntülenebilir ve gerektiğinde sonlandırılabilir. Bu, donmuş programları kapatmak veya hangi uygulamanın kaynak kullandığını görmek için faydalıdır.
İşlem komutları:
Get-Process
Çalışan işlemleri listeler.
Get-Process chrome
Chrome işlemlerini gösterir.
Stop-Process -Name "notepad"
Notepad işlemini kapatır.
Stop-Process -Id 1234
Belirli işlem kimliğine sahip işlemi kapatır.
Bu komutları kullanırken sistem işlemlerine dikkat edilmelidir. Yanlış işlem kapatılırsa açık çalışmalar kaybolabilir veya sistem kararsız hale gelebilir.
PowerShell Script Nedir?
PowerShell script, birden fazla komutun .ps1 uzantılı dosya içine yazılarak çalıştırılmasıdır. Scriptler sayesinde tekrar eden işler otomatik hale getirilebilir. Örneğin her gün belirli klasördeki eski dosyaları temizlemek, servis durumlarını kontrol etmek veya sistem bilgilerini raporlamak için PowerShell scriptleri kullanılabilir.
Script kullanımı güçlüdür, ancak dikkatli olunmalıdır. İnternetten indirilen veya içeriği bilinmeyen PowerShell scriptleri çalıştırmak güvenlik riski oluşturabilir. Çünkü scriptler sistemde dosya silebilir, ayar değiştirebilir veya zararlı işlemler yapabilir.
Script kullanırken dikkat edilecekler:
Execution Policy Nedir?
PowerShell’de script çalıştırma davranışını kontrol eden yapıya Execution Policy denir. Bu ayar, hangi scriptlerin çalıştırılabileceğini belirler. Amaç, kullanıcıların yanlışlıkla zararlı veya güvenilmeyen script çalıştırmasını zorlaştırmaktır.
Bazı sistemlerde .ps1 dosyaları doğrudan çalışmayabilir. Bunun nedeni Execution Policy ayarı olabilir. Ancak bu ayarı değiştirirken dikkatli olunmalıdır. Güvenlik seviyesi gereksiz yere düşürülmemelidir.
Yaygın Execution Policy modları:
PowerShell ile Yararlı İşlemler
PowerShell günlük kullanımda birçok pratik işlem için kullanılabilir. Özellikle sistem hakkında bilgi almak, dosya aramak, bağlantı test etmek ve servisleri kontrol etmek için oldukça kullanışlıdır.
Yararlı örnek işlemler:
PowerShell’in gücü, komutları birbirine bağlayabilmesinden gelir. Bu sayede basit komutlardan daha gelişmiş sonuçlar üretilebilir.
Yapılan Yaygın Hatalar
PowerShell kullanırken yapılan en büyük hata, internette bulunan komutları ne işe yaradığını bilmeden çalıştırmaktır. PowerShell oldukça güçlü olduğu için yanlış komutlar sistem ayarlarını değiştirebilir, dosya silebilir veya güvenlik riskleri oluşturabilir.
Bir diğer yaygın hata, PowerShell’i sürekli yönetici olarak kullanmaktır. Yönetici yetkisi sadece ihtiyaç olduğunda kullanılmalıdır. Normal işlemler için standart kullanıcı yetkisi yeterlidir.
Sık yapılan hatalar şunlardır:
Hangi Kullanıcı İçin Ne Daha Uygun?
Günlük kullanıcılar için PowerShell’in temel komutları yeterlidir. Sistem bilgisi alma, IP kontrolü, ping testi, servis durumu ve disk alanı gibi işlemler günlük kullanımda faydalı olabilir.
Oyuncular için PowerShell, ağ bağlantısı testi, çalışan işlemleri kontrol etme ve sistem bilgisi görüntüleme açısından işe yarayabilir. Özellikle bağlantı sorunlarında Test-Connection ve Test-NetConnection komutları faydalıdır.
Teknik destek veren kişiler için PowerShell daha önemlidir. Sistem raporu alma, servisleri kontrol etme, log inceleme, kullanıcı işlemleri ve otomasyon scriptleri teknik destek süreçlerini hızlandırabilir.
Sistem yöneticileri için PowerShell vazgeçilmez araçlardan biridir. Çok sayıda bilgisayarda işlem yapmak, sunucu yönetmek, kullanıcı hesaplarını düzenlemek ve rapor almak PowerShell ile daha verimli yapılabilir.
Kısaca:
PowerShell, Windows kullanıcıları için güçlü ve esnek bir komut satırı aracıdır. CMD’ye göre daha gelişmiş yapıya sahiptir ve sistem yönetimi, dosya işlemleri, ağ kontrolü, servis yönetimi ve otomasyon gibi birçok alanda kullanılabilir.
Yeni başlayanlar için PowerShell ilk başta karmaşık görünebilir, ancak temel komutlar öğrenildiğinde oldukça pratik hale gelir. Get-Process, Get-Service, Get-ComputerInfo, Test-Connection, Get-NetIPConfiguration gibi komutlar günlük sorun giderme işlemlerinde faydalıdır.
Sonuç olarak PowerShell, doğru kullanıldığında Windows yönetimini kolaylaştıran güçlü bir araçtır. Ancak güçlü olduğu kadar dikkat gerektirir. Bilinmeyen scriptler çalıştırılmamalı, yönetici yetkisi gereksiz kullanılmamalı ve sistem üzerinde değişiklik yapan komutlar bilinçli şekilde uygulanmalıdır. Temel komutlardan başlayıp zamanla script ve otomasyon tarafına geçmek en sağlıklı öğrenme yoludur.
PowerShell, Windows işletim sisteminde komut satırı ve otomasyon işlemleri için kullanılan güçlü bir yönetim aracıdır. İlk bakışta CMD’ye benzese de PowerShell çok daha gelişmiş bir yapıya sahiptir. Sadece basit komutlar çalıştırmak için değil; sistem yönetimi, dosya işlemleri, servis kontrolü, ağ ayarları, otomasyon scriptleri, kullanıcı yönetimi ve sunucu işlemleri gibi birçok alanda kullanılabilir.
CMD daha çok klasik komut satırı işlemleri için kullanılırken, PowerShell nesne tabanlı çalışır. Bu da PowerShell’i özellikle sistem yöneticileri, yazılımcılar, teknik destek ekipleri ve ileri seviye Windows kullanıcıları için oldukça güçlü hale getirir. Ancak günlük kullanıcılar da temel PowerShell komutlarını öğrenerek bilgisayar hakkında bilgi alma, dosya arama, servis kontrolü ve bazı sorun giderme işlemlerini kolayca yapabilir.
Bu rehberde PowerShell nedir, CMD’den farkı nedir, nasıl açılır, temel komutlar nelerdir, hangi yararlı işlemler yapılabilir, script kullanırken nelere dikkat edilmeli ve en sık yapılan hatalar nelerdir sade şekilde anlatılacaktır.
PowerShell Nedir?
PowerShell, Microsoft tarafından geliştirilen bir komut satırı kabuğu ve betik dilidir. Windows üzerinde birçok yönetim işlemini komutlarla yapmayı sağlar. PowerShell ile dosya ve klasör yönetimi, servis kontrolü, işlem takibi, ağ bilgisi öğrenme, sistem raporu alma ve otomasyon işlemleri yapılabilir.
PowerShell’in en önemli farklarından biri nesne tabanlı çalışmasıdır. CMD komutları çoğunlukla metin çıktısı verirken, PowerShell komutları daha düzenli ve işlenebilir nesneler döndürebilir. Bu sayede komut çıktıları filtrelenebilir, sıralanabilir, başka komutlara aktarılabilir ve script içinde daha verimli kullanılabilir.
PowerShell ile yapılabilecek bazı işlemler:
- Sistem bilgilerini öğrenme
- Dosya ve klasör işlemleri
- Servisleri başlatma veya durdurma
- Çalışan işlemleri görüntüleme
- Ağ bilgilerini kontrol etme
- Windows Update bilgilerini inceleme
- Disk ve depolama bilgilerini görme
- Kullanıcı ve yetki işlemleri
- Otomasyon scriptleri hazırlama
- Sunucu yönetimi
PowerShell ile CMD Arasındaki Fark
PowerShell ve CMD benzer görünse de aralarında önemli farklar vardır. CMD daha eski ve daha basit bir komut satırı aracıdır. PowerShell ise daha modern, güçlü ve otomasyon odaklıdır.
CMD’de komutlar genellikle metin tabanlı çıktı verir. PowerShell ise komutlardan gelen verileri nesne olarak işler. Bu nedenle PowerShell’de filtreleme, sıralama, seçme ve dışa aktarma işlemleri daha gelişmiştir.
Temel farklar şöyle özetlenebilir:
- CMD daha basit ve klasik komutlar için uygundur.
- PowerShell daha gelişmiş sistem yönetimi için uygundur.
- CMD metin tabanlı çıktı üretir.
- PowerShell nesne tabanlı çalışır.
- PowerShell script yazımı için daha güçlüdür.
- PowerShell ile otomasyon daha kolaydır.
- CMD günlük basit işlemlerde yeterli olabilir.
- PowerShell teknik kullanıcılar için daha esnektir.
PowerShell Nasıl Açılır?
PowerShell’i açmanın birkaç farklı yolu vardır. Windows sürümüne göre “Windows PowerShell” veya “Terminal” olarak görünebilir. Windows 11’de genellikle Terminal üzerinden PowerShell sekmesi açılır.
PowerShell açma yöntemleri:
- Başlat menüsüne “PowerShell” yazıp açmak
- Başlat menüsüne sağ tıklayıp Terminal seçmek
- Win + X menüsünden Terminal açmak
- Çalıştır ekranına powershell yazmak
- Yönetici işlemleri için “Yönetici olarak çalıştır” seçmek
Yönetici olarak açılan PowerShell’de dikkatli olunmalıdır. Çünkü sistem üzerinde değişiklik yapan komutlar doğrudan etkili olabilir. Ne yaptığı bilinmeyen komutlar rastgele çalıştırılmamalıdır.
Temel PowerShell Komutları
PowerShell’de komutlara genellikle “cmdlet” denir. Cmdlet yapısı çoğunlukla fiil-isim formatındadır. Örneğin Get-Process, çalışan işlemleri getirir. Get-Service, servisleri listeler. Bu isimlendirme ilk başta farklı görünse de zamanla oldukça anlaşılır hale gelir.
Temel PowerShell komutlarından bazıları:
Get-Process
Çalışan işlemleri listeler.
Get-Service
Windows servislerini gösterir.
Get-ChildItem
Bulunulan klasördeki dosya ve klasörleri listeler. CMD’deki dir komutuna benzer.
Set-Location
Klasör değiştirmek için kullanılır. CMD’deki cd komutuna benzer.
Clear-Host
Ekranı temizler.
Get-ComputerInfo
Bilgisayar hakkında detaylı sistem bilgisi verir.
Get-Date
Tarih ve saat bilgisini gösterir.
Get-Help
Komutlar hakkında yardım almak için kullanılır.
PowerShell öğrenirken Get-Help komutu oldukça faydalıdır. Bir komutun ne işe yaradığını, hangi parametreleri desteklediğini ve örnek kullanımlarını görmek için kullanılabilir.
Dosya ve Klasör İşlemleri
PowerShell ile dosya ve klasör yönetimi yapılabilir. Klasör listeleme, dosya kopyalama, taşıma, silme, yeniden adlandırma ve arama gibi işlemler komutlarla gerçekleştirilebilir.
Temel dosya ve klasör komutları:
Get-ChildItem
Dosya ve klasörleri listeler.
New-Item -ItemType Directory -Name "YeniKlasor"
Yeni klasör oluşturur.
Copy-Item "dosya.txt" "D:\Yedek"
Dosyayı belirtilen konuma kopyalar.
Move-Item "dosya.txt" "D:\Yedek"
Dosyayı belirtilen konuma taşır.
Remove-Item "dosya.txt"
Dosyayı siler.
Rename-Item "eski.txt" "yeni.txt"
Dosya veya klasör adını değiştirir.
Dosya silme komutları dikkatli kullanılmalıdır. Özellikle Remove-Item komutu yanlış kullanılırsa önemli dosyalar silinebilir. Yönetici PowerShell ekranında dosya işlemi yaparken hangi klasörde olduğunuzu kontrol etmek önemlidir.
Sistem Bilgilerini Öğrenme
PowerShell, bilgisayar hakkında detaylı bilgi almak için oldukça kullanışlıdır. İşletim sistemi, işlemci, bellek, BIOS, disk ve ağ bilgileri komutlarla görüntülenebilir.
Kullanılabilecek bazı komutlar:
Get-ComputerInfo
Sistem hakkında detaylı bilgi verir.
Get-CimInstance Win32_Processor
İşlemci bilgilerini gösterir.
Get-CimInstance Win32_PhysicalMemory
RAM bilgilerini gösterir.
Get-CimInstance Win32_BIOS
BIOS bilgilerini gösterir.
Get-Volume
Disk bölümlerini ve boş alan durumunu listeler.
Get-NetIPAddress
Ağ adaptörlerinin IP bilgilerini gösterir.
Bu komutlar teknik destek alırken veya bilgisayar donanımını kontrol ederken işe yarar. Özellikle sistem raporu çıkarmak isteyen kullanıcılar için PowerShell oldukça pratiktir.
Ağ İşlemleri ve İnternet Kontrolü
PowerShell ile ağ bağlantısı ve internet durumu kontrol edilebilir. IP adresi, DNS bilgileri, bağlantı testi ve ağ adaptörleri hakkında bilgi alınabilir.
Ağ kontrolünde kullanılabilecek komutlar:
Test-Connection google.com
Ping testi yapar. CMD’deki ping komutuna benzer.
Get-NetIPConfiguration
Ağ yapılandırmasını gösterir.
Get-DnsClientServerAddress
DNS sunucu adreslerini listeler.
Get-NetAdapter
Ağ adaptörlerini gösterir.
Resolve-DnsName google.com
Alan adı çözümlemesini test eder.
Test-NetConnection google.com -Port 443
Belirli bir adrese ve porta bağlantı testi yapar.
Özellikle Test-NetConnection komutu oldukça faydalıdır. Bir sunucunun belirli bir porttan erişilebilir olup olmadığını kontrol etmek için kullanılabilir. Örneğin web sunucusu, mail sunucusu veya uzak masaüstü bağlantısı testlerinde işe yarayabilir.
Servisleri Yönetme
Windows servisleri, arka planda çalışan sistem bileşenleridir. PowerShell ile servisleri listelemek, durumlarını görmek, başlatmak veya durdurmak mümkündür.
Servis komutları:
Get-Service
Tüm servisleri listeler.
Get-Service -Name "Spooler"
Belirli bir servisin durumunu gösterir.
Start-Service -Name "Spooler"
Belirli bir servisi başlatır.
Stop-Service -Name "Spooler"
Belirli bir servisi durdurur.
Restart-Service -Name "Spooler"
Belirli bir servisi yeniden başlatır.
Servis yönetimi dikkatli yapılmalıdır. Rastgele servis durdurmak Windows’un bazı özelliklerinin çalışmamasına neden olabilir. Örneğin ağ, güvenlik, yazdırma veya güncelleme servisleri bilinçsizce kapatılırsa sistemde sorunlar yaşanabilir.
Çalışan İşlemleri Görme ve Kapatma
PowerShell ile bilgisayarda çalışan işlemler görüntülenebilir ve gerektiğinde sonlandırılabilir. Bu, donmuş programları kapatmak veya hangi uygulamanın kaynak kullandığını görmek için faydalıdır.
İşlem komutları:
Get-Process
Çalışan işlemleri listeler.
Get-Process chrome
Chrome işlemlerini gösterir.
Stop-Process -Name "notepad"
Notepad işlemini kapatır.
Stop-Process -Id 1234
Belirli işlem kimliğine sahip işlemi kapatır.
Bu komutları kullanırken sistem işlemlerine dikkat edilmelidir. Yanlış işlem kapatılırsa açık çalışmalar kaybolabilir veya sistem kararsız hale gelebilir.
PowerShell Script Nedir?
PowerShell script, birden fazla komutun .ps1 uzantılı dosya içine yazılarak çalıştırılmasıdır. Scriptler sayesinde tekrar eden işler otomatik hale getirilebilir. Örneğin her gün belirli klasördeki eski dosyaları temizlemek, servis durumlarını kontrol etmek veya sistem bilgilerini raporlamak için PowerShell scriptleri kullanılabilir.
Script kullanımı güçlüdür, ancak dikkatli olunmalıdır. İnternetten indirilen veya içeriği bilinmeyen PowerShell scriptleri çalıştırmak güvenlik riski oluşturabilir. Çünkü scriptler sistemde dosya silebilir, ayar değiştirebilir veya zararlı işlemler yapabilir.
Script kullanırken dikkat edilecekler:
- İçeriği bilinmeyen scriptleri çalıştırmayın.
- Scripti önce Not Defteri ile açıp inceleyin.
- Yönetici yetkisi isteyen scriptlere dikkat edin.
- Güvenilmeyen kaynaklardan .ps1 dosyası indirmeyin.
- Script çalıştırmadan önce yedek alın.
- Ne yaptığını anlamadığınız komutları araştırın.
- Kurumsal bilgisayarlarda izinsiz script çalıştırmayın.
Execution Policy Nedir?
PowerShell’de script çalıştırma davranışını kontrol eden yapıya Execution Policy denir. Bu ayar, hangi scriptlerin çalıştırılabileceğini belirler. Amaç, kullanıcıların yanlışlıkla zararlı veya güvenilmeyen script çalıştırmasını zorlaştırmaktır.
Bazı sistemlerde .ps1 dosyaları doğrudan çalışmayabilir. Bunun nedeni Execution Policy ayarı olabilir. Ancak bu ayarı değiştirirken dikkatli olunmalıdır. Güvenlik seviyesi gereksiz yere düşürülmemelidir.
Yaygın Execution Policy modları:
- Restricted
- RemoteSigned
- AllSigned
- Unrestricted
- Bypass
PowerShell ile Yararlı İşlemler
PowerShell günlük kullanımda birçok pratik işlem için kullanılabilir. Özellikle sistem hakkında bilgi almak, dosya aramak, bağlantı test etmek ve servisleri kontrol etmek için oldukça kullanışlıdır.
Yararlı örnek işlemler:
- Bilgisayarın IP bilgisini görmek
- Belirli bir sunucuya bağlantı testi yapmak
- Disk boş alanını kontrol etmek
- Çalışan işlemleri listelemek
- Windows servislerini kontrol etmek
- Klasördeki dosyaları boyuta göre sıralamak
- Eski dosyaları bulmak
- Sistem bilgilerini raporlamak
- DNS çözümleme testi yapmak
- Belirli portun açık olup olmadığını kontrol etmek
PowerShell’in gücü, komutları birbirine bağlayabilmesinden gelir. Bu sayede basit komutlardan daha gelişmiş sonuçlar üretilebilir.
Yapılan Yaygın Hatalar
PowerShell kullanırken yapılan en büyük hata, internette bulunan komutları ne işe yaradığını bilmeden çalıştırmaktır. PowerShell oldukça güçlü olduğu için yanlış komutlar sistem ayarlarını değiştirebilir, dosya silebilir veya güvenlik riskleri oluşturabilir.
Bir diğer yaygın hata, PowerShell’i sürekli yönetici olarak kullanmaktır. Yönetici yetkisi sadece ihtiyaç olduğunda kullanılmalıdır. Normal işlemler için standart kullanıcı yetkisi yeterlidir.
Sık yapılan hatalar şunlardır:
- Bilinmeyen scriptleri çalıştırmak
- Komutun ne yaptığını anlamadan kopyala-yapıştır yapmak
- Yönetici PowerShell’i gereksiz kullanmak
- Execution Policy ayarını bilinçsiz değiştirmek
- Dosya silme komutlarını yanlış klasörde çalıştırmak
- Sistem servislerini rastgele durdurmak
- Hata mesajlarını okumadan işlem yapmak
- PowerShell ile CMD komutlarını karıştırmak
- Kurumsal cihazlarda izinsiz script çalıştırmak
- Güvenilmeyen kaynaklardan .ps1 dosyası indirmek
Hangi Kullanıcı İçin Ne Daha Uygun?
Günlük kullanıcılar için PowerShell’in temel komutları yeterlidir. Sistem bilgisi alma, IP kontrolü, ping testi, servis durumu ve disk alanı gibi işlemler günlük kullanımda faydalı olabilir.
Oyuncular için PowerShell, ağ bağlantısı testi, çalışan işlemleri kontrol etme ve sistem bilgisi görüntüleme açısından işe yarayabilir. Özellikle bağlantı sorunlarında Test-Connection ve Test-NetConnection komutları faydalıdır.
Teknik destek veren kişiler için PowerShell daha önemlidir. Sistem raporu alma, servisleri kontrol etme, log inceleme, kullanıcı işlemleri ve otomasyon scriptleri teknik destek süreçlerini hızlandırabilir.
Sistem yöneticileri için PowerShell vazgeçilmez araçlardan biridir. Çok sayıda bilgisayarda işlem yapmak, sunucu yönetmek, kullanıcı hesaplarını düzenlemek ve rapor almak PowerShell ile daha verimli yapılabilir.
Kısaca:
- Günlük kullanıcılar için: Temel bilgi ve ağ komutları yeterlidir.
- Oyuncular için: Ağ testi ve işlem kontrolü faydalıdır.
- Teknik kullanıcılar için: Servis, log ve sistem komutları önemlidir.
- Sistem yöneticileri için: Otomasyon ve script kullanımı gereklidir.
- Yeni başlayanlar için: Bilgi veren komutlarla başlamak daha güvenlidir.
- Kurumsal kullanıcılar için: Şirket politikalarına uygun kullanım önemlidir.
PowerShell, Windows kullanıcıları için güçlü ve esnek bir komut satırı aracıdır. CMD’ye göre daha gelişmiş yapıya sahiptir ve sistem yönetimi, dosya işlemleri, ağ kontrolü, servis yönetimi ve otomasyon gibi birçok alanda kullanılabilir.
Yeni başlayanlar için PowerShell ilk başta karmaşık görünebilir, ancak temel komutlar öğrenildiğinde oldukça pratik hale gelir. Get-Process, Get-Service, Get-ComputerInfo, Test-Connection, Get-NetIPConfiguration gibi komutlar günlük sorun giderme işlemlerinde faydalıdır.
Sonuç olarak PowerShell, doğru kullanıldığında Windows yönetimini kolaylaştıran güçlü bir araçtır. Ancak güçlü olduğu kadar dikkat gerektirir. Bilinmeyen scriptler çalıştırılmamalı, yönetici yetkisi gereksiz kullanılmamalı ve sistem üzerinde değişiklik yapan komutlar bilinçli şekilde uygulanmalıdır. Temel komutlardan başlayıp zamanla script ve otomasyon tarafına geçmek en sağlıklı öğrenme yoludur.



