Site Overlay

PowerShell Komutları: Dosya, Sistem ve Ağ Yönetimi İçin Kapsamlı Rehber

PowerShell Komutları ve Kullanım Örnekleri

PowerShell, Windows işletim sisteminde komut satırı ve betik dili olarak kullanılan güçlü bir araçtır. Bu makalede, PowerShell ile kullanabileceğiniz bazı temel komutlar ve işlevler hakkında bilgi vereceğiz.

1. Dosya ve Dizin Yönetimi

PowerShell ile dosya ve dizinleri kolayca yönetebilirsiniz:

  • Get-ChildItem: Belirtilen dizindeki dosya ve alt dizinleri listeler. (ls veya dir kısaltmaları da kullanılabilir.)
  • Get-ChildItem -Path C:\Example
  • New-Item: Yeni bir dosya veya dizin oluşturur.
  • New-Item -Path C:\Example -Name "NewFolder" -ItemType Directory
  • Remove-Item: Bir dosya veya dizini siler.
  • Remove-Item -Path C:\Example\OldFile.txt
  • Copy-Item: Dosya veya dizini kopyalar.
  • Copy-Item -Path C:\Example\File.txt -Destination C:\Backup
  • Move-Item: Dosya veya dizini taşır.
  • Move-Item -Path C:\Example\File.txt -Destination C:\Archive

2. Sistem Yönetimi

Sistem yönetimi komutları ile süreçleri ve servisleri yönetebilirsiniz:

  • Get-Process: Mevcut çalışan süreçleri listeler.
  • Get-Process
  • Stop-Process: Belirtilen bir süreci durdurur.
  • Stop-Process -Name "notepad"
  • Get-Service: Mevcut sistem servislerini listeler.
  • Get-Service
  • Start-Service ve Stop-Service: Belirtilen bir servisi başlatır veya durdurur.
  • Start-Service -Name "wuauserv"
    Stop-Service -Name "wuauserv"

3. Ağ Yönetimi

PowerShell ile ağ bağlantılarınızı yönetmek mümkündür:

  • Test-Connection: Bir hedefe ping atar, bağlantıyı test eder.
  • Test-Connection -ComputerName google.com
  • Get-NetIPAddress: Mevcut ağ arabirimlerinin IP adreslerini listeler.
  • Get-NetIPAddress

4. Kullanıcı ve Grup Yönetimi

Kullanıcı hesapları ve grupları yönetmek için kullanabileceğiniz komutlar:

  • Get-LocalUser: Yerel kullanıcı hesaplarını listeler.
  • Get-LocalUser
  • New-LocalUser: Yeni bir yerel kullanıcı oluşturur.
  • New-LocalUser -Name "NewUser" -Password (ConvertTo-SecureString "Password123!" -AsPlainText -Force) -FullName "New User" -Description "Description"
  • Add-LocalGroupMember: Bir kullanıcıyı yerel bir gruba ekler.
  • Add-LocalGroupMember -Group "Administrators" -Member "NewUser"

5. Betik ve Otomasyon

Betikler ve otomasyon işlemleri için bazı örnekler:

  • Betik Örneği: Bir dosyanın varlığını kontrol etmek ve yoksa oluşturmak için basit bir betik.
  • if (-Not (Test-Path -Path C:\Example\log.txt)) {
        New-Item -Path C:\Example -Name "log.txt" -ItemType File
    }

6. Güvenlik ve Yönetim

Güvenlik ve yönetim komutları ile PowerShell’in güvenlik ayarlarını yapabilirsiniz:

  • Set-ExecutionPolicy: PowerShell betiklerinin nasıl çalıştırılabileceğini kontrol eder.
  • Set-ExecutionPolicy RemoteSigned

Sonuç

Bu makalede, PowerShell’in bazı temel komutlarını ve bunların nasıl kullanılabileceğini öğrendik. PowerShell’in gücünü kullanarak sistem yönetimini ve otomasyonu daha kolay hale getirebilirsiniz. Daha fazla bilgi ve komutlar için PowerShell’in kendi yardım sistemini (Get-Help) kullanabilirsiniz.

PowerShell ile RDP (Remote Desktop) Yönetimi

PowerShell kullanarak Windows işletim sisteminde Uzaktan Masaüstü (RDP) ayarlarını etkinleştirebilir ve yapılandırabilirsiniz. Bu makalede, RDP’yi etkinleştirmek, güvenlik duvarı ayarlarını yapmak ve gerekli servisleri yönetmek için kullanabileceğiniz PowerShell komutlarını öğreneceksiniz.

1. RDP’yi Etkinleştirme

RDP’yi etkinleştirmek için Windows Kayıt Defteri’nde gerekli ayarları yapmanız gerekir. Aşağıdaki komut, RDP’yi etkinleştiren kayıt defteri anahtarını ayarlar:

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" -Value 0

2. Güvenlik Duvarı Ayarlarını Yapılandırma

RDP trafiğine izin vermek için güvenlik duvarı kurallarını yapılandırmanız gerekir. Aşağıdaki komut, güvenlik duvarında RDP trafiğine izin veren bir kural ekler:

Enable-NetFirewallRule -DisplayGroup "Remote Desktop"

3. RDP Servislerini Başlatma

RDP’nin düzgün çalışması için gerekli servislerin başlatılmış olması gerekir. Aşağıdaki komut, Remote Desktop servisinin başlatılmasını sağlar:

Start-Service -Name "TermService"

4. RDP Portunun Dinlendiğini Test Etme

RDP’nin etkin olup olmadığını test etmek için aşağıdaki komutu kullanabilirsiniz. Bu komut, RDP portunun (3389) dinlendiğini doğrular:

Test-NetConnection -ComputerName localhost -Port 3389

5. Örnek Betik

RDP’yi etkinleştirmek ve yapılandırmak için bir PowerShell betiği örneği:

# RDP'yi etkinleştir
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server" -Name "fDenyTSConnections" -Value 0

# RDP için güvenlik duvarı kuralını etkinleştir
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"

# Remote Desktop servisinin çalıştığını doğrula
Start-Service -Name "TermService"

# RDP portunun dinlendiğini doğrula
Test-NetConnection -ComputerName localhost -Port 3389

Sonuç

Bu makalede, PowerShell kullanarak RDP’yi etkinleştirmenin ve yapılandırmanın temel adımlarını öğrendiniz. Bu komutlar ile RDP’yi yönetebilir, güvenlik duvarı ayarlarını yapılandırabilir ve gerekli servisleri başlatabilirsiniz. Daha fazla bilgi ve komutlar için PowerShell’in kendi yardım sistemini (Get-Help) kullanabilirsiniz.

PowerShell ile Windows Kullanıcı Hesapları Yönetimi

PowerShell, Windows işletim sisteminde kullanıcı hesaplarını yönetmek için güçlü bir araçtır. Bu makalede, PowerShell kullanarak kullanıcı hesabı oluşturma, parola değiştirme, gruba ekleme, gruptan çıkarma, devre dışı bırakma, etkinleştirme ve silme gibi işlemleri nasıl gerçekleştireceğinizi öğreneceksiniz.

1. Kullanıcı Hesabı Oluşturma

Yeni bir yerel kullanıcı hesabı oluşturmak için aşağıdaki komutu kullanabilirsiniz:

New-LocalUser -Name "YeniKullanici" -Password (ConvertTo-SecureString "Parola123!" -AsPlainText -Force) -FullName "Yeni Kullanıcı" -Description "Yeni kullanıcı hesabı"

Bu komut, “YeniKullanici” adında bir kullanıcı hesabı oluşturur ve belirtilen parolayı ayarlar.

2. Kullanıcı Parolasını Değiştirme

Bir kullanıcının parolasını değiştirmek için aşağıdaki komutu kullanabilirsiniz:

Set-LocalUser -Name "KullaniciAdı" -Password (ConvertTo-SecureString "YeniParola123!" -AsPlainText -Force)

Bu komut, “KullaniciAdı” adlı kullanıcının parolasını “YeniParola123!” olarak değiştirir.

3. Kullanıcıyı Bir Gruba Eklemek

Bir kullanıcıyı yerel bir gruba eklemek için şu komutu kullanabilirsiniz:

Add-LocalGroupMember -Group "Administrators" -Member "KullaniciAdı"

Bu komut, “KullaniciAdı” adlı kullanıcıyı “Administrators” grubuna ekler.

4. Kullanıcıyı Bir Grubun İçinden Çıkarmak

Bir kullanıcıyı yerel bir gruptan çıkarmak için aşağıdaki komutu kullanabilirsiniz:

Remove-LocalGroupMember -Group "Administrators" -Member "KullaniciAdı"

Bu komut, “KullaniciAdı” adlı kullanıcıyı “Administrators” grubundan çıkarır.

5. Kullanıcı Hesabını Devre Dışı Bırakma

Bir kullanıcı hesabını devre dışı bırakmak için şu komutu kullanabilirsiniz:

Disable-LocalUser -Name "KullaniciAdı"

Bu komut, “KullaniciAdı” adlı kullanıcıyı devre dışı bırakır.

6. Kullanıcı Hesabını Etkinleştirme

Bir kullanıcı hesabını etkinleştirmek için aşağıdaki komutu kullanabilirsiniz:

Enable-LocalUser -Name "KullaniciAdı"

Bu komut, “KullaniciAdı” adlı kullanıcıyı yeniden etkinleştirir.

7. Kullanıcı Hesabını Silme

Bir kullanıcı hesabını silmek için şu komutu kullanabilirsiniz:

Remove-LocalUser -Name "KullaniciAdı"

Bu komut, “KullaniciAdı” adlı kullanıcı hesabını tamamen siler.

Sonuç

Bu makalede, PowerShell kullanarak Windows’ta kullanıcı hesaplarını nasıl oluşturabileceğinizi, parolalarını değiştirebileceğinizi, gruba ekleyip çıkarabileceğinizi ve hesabı devre dışı bırakıp etkinleştirebileceğinizi öğrendiniz. PowerShell’in bu komutlarını kullanarak kullanıcı yönetimini daha verimli bir şekilde gerçekleştirebilirsiniz.

PowerShell ile Klasör Yönetimi

PowerShell kullanarak Windows işletim sisteminde klasörleri kolayca yönetebilirsiniz. Bu bölümde, klasör oluşturma, silme, yeniden adlandırma, gizleme ve diğer işlemlerle ilgili komutları öğreneceksiniz.

1. Klasör Oluşturma

Yeni bir klasör oluşturmak için aşağıdaki komutu kullanabilirsiniz:

New-Item -Path C:\Example -Name "YeniKlasor" -ItemType Directory

Bu komut, “C:\Example” dizininde “YeniKlasor” adında bir klasör oluşturur.

2. Klasör Silme

Bir klasörü silmek için şu komutu kullanabilirsiniz:

Remove-Item -Path C:\Example\EskiKlasor -Recurse

Bu komut, “C:\Example\EskiKlasor” dizinini ve içindeki tüm dosyaları siler.

3. Klasöre Yeni Ad Verme

Bir klasöre yeni ad vermek için aşağıdaki komutu kullanabilirsiniz:

Rename-Item -Path C:\Example\EskiKlasor -NewName "YeniKlasor"

Bu komut, “C:\Example\EskiKlasor” dizinini “YeniKlasor” olarak yeniden adlandırır.

4. Klasörü Gizleme

Bir klasörü gizlemek için aşağıdaki komutu kullanabilirsiniz:

Attrib +h C:\Example\GizliKlasor

Bu komut, “C:\Example\GizliKlasor” dizinini gizli hale getirir.

5. Klasörü Kopyalama

Bir klasörü kopyalamak için şu komutu kullanabilirsiniz:

Copy-Item -Path C:\Example\KopyalaBuKlasor -Destination C:\Backup -Recurse

Bu komut, “C:\Example\KopyalaBuKlasor” dizinini “C:\Backup” dizinine kopyalar.

6. Klasörü Taşıma

Bir klasörü taşımak için aşağıdaki komutu kullanabilirsiniz:

Move-Item -Path C:\Example\TasinaKlasor -Destination C:\YeniKonum

Bu komut, “C:\Example\TasinaKlasor” dizinini “C:\YeniKonum” dizinine taşır.

7. Klasörü Paylaşıma Açma

Bir klasörü paylaşmak için şu komutu kullanabilirsiniz:

New-SmbShare -Name "Paylasim" -Path C:\Example\PaylasimKlasor -FullAccess "Everyone"

Bu komut, “C:\Example\PaylasimKlasor” dizinini “Paylasim” adıyla paylaşır ve tüm kullanıcılara tam erişim verir.

8. Klasörü Belirli Kullanıcılar için Paylaşıma Açma

Bir klasörü belirli kullanıcılar için paylaşmak için şu komutu kullanabilirsiniz:

New-SmbShare -Name "OzelPaylasim" -Path C:\Example\OzelKlasor -FullAccess "KullaniciAdı"

Bu komut, “C:\Example\OzelKlasor” dizinini “OzelPaylasim” adıyla paylaşır ve “KullaniciAdı” adlı kullanıcıya tam erişim verir.

9. Klasörü Paylaşıma Kapatma

Bir klasörün paylaşımını kapatmak için şu komutu kullanabilirsiniz:

Remove-SmbShare -Name "Paylasim"

Bu komut, “Paylasim” adlı paylaşıma son verir.

10. Klasörün Yetkilerini Görüntüleme

Bir klasörün mevcut yetkilerini görüntülemek için şu komutu kullanabilirsiniz:

Get-Acl -Path C:\Example\Klasor

Bu komut, “C:\Example\Klasor” dizininin mevcut erişim kontrol listesini görüntüler.

11. Klasörün Yetkilerini Full Kontrol Yapma

Bir klasörün yetkilerini tam kontrol olarak ayarlamak için şu komutu kullanabilirsiniz:

$acl = Get-Acl -Path C:\Example\Klasor
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("Everyone","FullControl","ContainerInherit, ObjectInherit","None","Allow")
$acl.SetAccessRule($rule)
Set-Acl -Path C:\Example\Klasor -AclObject $acl

Bu komut, “C:\Example\Klasor” dizinine “Everyone” grubuna tam kontrol yetkisi verir.

12. Klasörün Yetkilerini Sadece Okuma Yapma

Bir klasörün yetkilerini sadece okuma olarak ayarlamak için aşağıdaki komutu kullanabilirsiniz:

$acl = Get-Acl -Path C:\Example\Klasor
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule("Everyone","Read","ContainerInherit, ObjectInherit","None","Allow")
$acl.SetAccessRule($rule)
Set-Acl -Path C:\Example\Klasor -AclObject $acl

Bu komut, “C:\Example\Klasor” dizinine “Everyone” grubuna sadece okuma yetkisi verir.

PowerShell ile Dosya Yönetimi

PowerShell, Windows işletim sisteminde dosyaları yönetmek için güçlü bir araçtır. Bu makalede, PowerShell kullanarak dosya oluşturma, yeniden adlandırma, taşıma, kopyalama ve içeriği yönetme konularında bilgi vereceğiz.

1. Dosya Oluşturma

Yeni bir dosya oluşturmak için aşağıdaki komutu kullanabilirsiniz:

New-Item -Path C:\Example -Name "YeniDosya.txt" -ItemType File

Bu komut, “C:\Example” dizininde “YeniDosya.txt” adında bir dosya oluşturur.

2. Dosyayı Yeniden Adlandırma

Bir dosyayı yeniden adlandırmak için şu komutu kullanabilirsiniz:

Rename-Item -Path C:\Example\EskiDosya.txt -NewName "YeniDosyaAdı.txt"

Bu komut, “C:\Example\EskiDosya.txt” dosyasını “YeniDosyaAdı.txt” olarak yeniden adlandırır.

3. Dosya Taşıma

Bir dosyayı başka bir konuma taşımak için aşağıdaki komutu kullanabilirsiniz:

Move-Item -Path C:\Example\TaşıBuDosya.txt -Destination C:\YeniKonum

Bu komut, “C:\Example\TaşıBuDosya.txt” dosyasını “C:\YeniKonum” dizinine taşır.

4. Dosya Kopyalama

Bir dosyayı kopyalamak için şu komutu kullanabilirsiniz:

Copy-Item -Path C:\Example\KopyalaBuDosya.txt -Destination C:\Backup

Bu komut, “C:\Example\KopyalaBuDosya.txt” dosyasını “C:\Backup” dizinine kopyalar.

5. Dosya Silme

Bir dosyayı silmek için aşağıdaki komutu kullanabilirsiniz:

Remove-Item -Path C:\Example\SilBuDosya.txt

Bu komut, “C:\Example\SilBuDosya.txt” dosyasını siler.

6. Dosya İçine Yazı veya Komut Girme

Bir dosyanın içine yazı eklemek için şu komutu kullanabilirsiniz:

Add-Content -Path C:\Example\Dosya.txt -Value "Bu bir yeni satırdır."

Bu komut, “C:\Example\Dosya.txt” dosyasının sonuna “Bu bir yeni satırdır.” metnini ekler.

7. Dosya İçeriğini PowerShell Penceresinde Görüntüleme

Bir dosyanın içeriğini PowerShell penceresinde görüntülemek için şu komutu kullanabilirsiniz:

Get-Content -Path C:\Example\Dosya.txt

Bu komut, “C:\Example\Dosya.txt” dosyasının içeriğini PowerShell penceresinde gösterir.

8. Dosyanın Belirli Bir Satırına Yazı Eklemek

Bir dosyanın belirli bir satırına yazı eklemek için aşağıdaki adımları izleyebilirsiniz:

$content = Get-Content -Path C:\Example\Dosya.txt
$content[2] = "Yeni satır"
$content | Set-Content -Path C:\Example\Dosya.txt

Bu komut, “C:\Example\Dosya.txt” dosyasının üçüncü satırını “Yeni satır” olarak değiştirir.

PowerShell ile Dosya Yönetimi ve İşlemleri

PowerShell, Windows işletim sistemlerinde dosya yürütme, betik çalıştırma, sessiz kurulum ve diğer çeşitli işlemleri gerçekleştirmek için güçlü bir araçtır. Bu makalede, PowerShell kullanarak bu işlemleri nasıl yapacağınızı detaylı bir şekilde öğreneceksiniz.

1. Dosya Yürütme ve Çalıştırma

PowerShell ile bir dosyayı çalıştırmak için aşağıdaki komutu kullanabilirsiniz:

Start-Process -FilePath "C:\Example\Program.exe"

Bu komut, belirtilen dosyayı çalıştırır.

2. PowerShell Betiği Çalıştırma

Bir PowerShell betiğini çalıştırmak için şu komutu kullanabilirsiniz:

PowerShell -ExecutionPolicy Bypass -File "C:\Scripts\Script.ps1"

Bu komut, belirtilen betiği çalıştırır ve betiğin çalışmasına izin verir.

3. Python Betiği Çalıştırma

Bir Python betiğini PowerShell ile çalıştırmak için aşağıdaki komutu kullanabilirsiniz:

python "C:\Scripts\Script.py"

Bu komut, Python betiğini çalıştırır. Python’un sistemde kurulu olması gerektiğini unutmayın.

4. EXE veya MSI Paketleri için Sessiz Kurulum Yapma

EXE veya MSI paketleri için sessiz kurulum yapmak için aşağıdaki komutları kullanabilirsiniz:

  • EXE Paketleri için:
  • Start-Process -FilePath "C:\Installer\Setup.exe" -ArgumentList "/silent" -NoNewWindow -Wait

    Bu komut, “Setup.exe” dosyasını sessiz modda çalıştırır.

  • MSI Paketleri için:
  • Start-Process -FilePath "C:\Installer\Setup.msi" -ArgumentList "/quiet" -NoNewWindow -Wait

    Bu komut, “Setup.msi” dosyasını sessiz modda çalıştırır.

5. Belirli Bir URL Adresinden Dosya İndirme

Bir URL adresinden dosya indirmek için şu komutu kullanabilirsiniz:

Invoke-WebRequest -Uri "https://example.com/file.zip" -OutFile "C:\file.zip"

Bu komut, belirtilen URL’den dosyayı indirir ve “C:\Downloads” dizinine kaydeder.

6. Normal Kullanıcı Hesabı ile Açılmış PowerShell’i Yönetici Hesabı ile Açtırma

Normal bir kullanıcı hesabıyla açılmış PowerShell penceresini yönetici olarak açmak için aşağıdaki adımları izleyebilirsiniz:

Start-Process powershell -Verb runAs

Bu komut, mevcut PowerShell penceresini yönetici olarak açar ve yönetici haklarıyla çalıştırır.

Sonuç

Bu makalede, PowerShell kullanarak dosya yürütme, betik çalıştırma, sessiz kurulum, dosya indirme ve yönetici olarak açma işlemlerini öğrendik. Bu komutları kullanarak Windows ortamında çeşitli işlemleri kolaylıkla gerçekleştirebilirsiniz. Daha fazla bilgi ve komutlar için PowerShell’in kendi yardım sistemini (Get-Help) kullanabilirsiniz.

PowerShell ile ZIP ve RAR Dosyalarını Açma

PowerShell, dosya yönetimi için güçlü bir araçtır ve ZIP dosyalarını açmak oldukça basittir. Ancak, RAR dosyalarını açmak için ek yazılımlar gereklidir. Bu makalede, PowerShell kullanarak ZIP ve RAR dosyalarını nasıl açabileceğinizi öğreneceksiniz.

1. ZIP Dosyalarını Açma

ZIP dosyalarını açmak için PowerShell’in yerleşik Expand-Archive cmdlet’ini kullanabilirsiniz:

Expand-Archive -Path "C:\Path\To\YourFile.zip" -DestinationPath "C:\Path\To\Extract"

Bu komut, belirtilen ZIP dosyasını “C:\Path\To\Extract” dizinine çıkarır. Eğer ZIP dosyasını mevcut dizine çıkarmak isterseniz, -DestinationPath parametresini kullanmadan sadece Expand-Archive -Path "C:\Path\To\YourFile.zip" komutunu kullanabilirsiniz.

2. RAR Dosyalarını Açma

PowerShell, RAR dosyalarını doğrudan açmak için yerleşik bir cmdlet sağlamaz. Ancak, üçüncü taraf araçlar kullanarak RAR dosyalarını açabilirsiniz. Örneğin, 7-Zip gibi bir araç kullanabilirsiniz:

  • 7-Zip’i kurduktan sonra, RAR dosyalarını açmak için aşağıdaki komutu kullanabilirsiniz:
  • "C:\Program Files\7-Zip\7z.exe" x "C:\Path\To\YourFile.rar" -o"C:\Path\To\Extract"

    Bu komut, belirtilen RAR dosyasını “C:\Path\To\Extract” dizinine çıkarır.

Eğer 7-Zip kurulu değilse, resmi web sitesinden indirip yükleyebilirsiniz. Komutu çalıştırmadan önce 7-Zip’in kurulu olduğundan ve 7z.exe dosyasının belirtilen konumda bulunduğundan emin olun.

Sonuç

Bu makalede, PowerShell kullanarak ZIP ve RAR dosyalarını nasıl açabileceğinizi öğrendiniz. ZIP dosyalarını PowerShell’in yerleşik cmdlet’i ile kolayca açabilirken, RAR dosyaları için üçüncü taraf bir araç kullanmanız gerekebilir. Daha fazla bilgi ve komutlar için PowerShell’in yardım sistemini (Get-Help) kullanabilirsiniz.

PowerShell ile Görev Zamanlayıcısı Oluşturma ve Yönetme

Windows görev zamanlayıcısı, belirli görevleri otomatik olarak gerçekleştirmek için kullanılır. PowerShell, bu görevleri oluşturmak ve yönetmek için güçlü bir araçtır. Bu makalede, PowerShell kullanarak görev zamanlayıcısı oluşturma, düzenleme ve silme işlemlerini öğreneceksiniz.

1. Görev Zamanlayıcısı Oluşturma

Yeni bir görev oluşturmak için New-ScheduledTask ve Register-ScheduledTask cmdlet’lerini kullanabilirsiniz. Aşağıda basit bir örnek verilmiştir:

  • Görev Tanımı: “C:\Path\To\YourScript.ps1” dosyasını her gün saat 9:00’da çalıştıran bir görev oluşturacağız.
  • $action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-File C:\Path\To\YourScript.ps1"
    $trigger = New-ScheduledTaskTrigger -Daily -At "09:00AM"
    $settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable
    Register-ScheduledTask -TaskName "MyDailyTask" -Action $action -Trigger $trigger -Settings $settings

    Bu komutlar, her gün saat 9:00’da belirli bir PowerShell betiğini çalıştıran bir görev oluşturur.

2. Varolan Görevi Düzenleme

Varolan bir görevi düzenlemek için önce görevi almalı, ardından düzenlemeleri yapmalısınız:

  • Görevi Alma:
  • $task = Get-ScheduledTask -TaskName "MyDailyTask"
  • Yeni Ayarları Tanımlama:
  • $action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-File C:\Path\To\NewScript.ps1"
    $trigger = New-ScheduledTaskTrigger -Weekly -DayOfWeek Monday -At "09:00AM"
    $settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable
    Set-ScheduledTask -TaskName "MyDailyTask" -Action $action -Trigger $trigger -Settings $settings

    Bu komutlar, görevi haftalık olarak her pazartesi günleri saat 9:00’da çalışacak şekilde günceller.

3. Görev Zamanlayıcısını Silme

Bir görevi silmek için Unregister-ScheduledTask cmdlet’ini kullanabilirsiniz:

  • Görevi Silme:
  • Unregister-ScheduledTask -TaskName "MyDailyTask" -Confirm:$false

    Bu komut, “MyDailyTask” adındaki görevi siler. -Confirm:$false parametresi, silme işleminde onay istemeden doğrudan silinmesini sağlar.

Sonuç

Bu makalede, PowerShell kullanarak Windows görev zamanlayıcısında nasıl görev oluşturabileceğinizi, mevcut görevleri nasıl düzenleyebileceğinizi ve gereksiz görevleri nasıl silebileceğinizi öğrendiniz. PowerShell’in bu yetenekleri, sistem yönetimini ve otomasyonu daha verimli hale getirmenize yardımcı olabilir. Daha fazla bilgi ve komutlar için PowerShell’in yardım sistemini (Get-Help) kullanabilirsiniz.

PowerShell ile Ekran Görüntüsü Alma

PowerShell ile ekran görüntüsü almak, otomatikleştirilmiş testler, raporlar veya hata ayıklama işlemleri için kullanışlı olabilir. Bu makalede, PowerShell kullanarak ekran görüntüsü almanın adımlarını öğrenebilirsiniz.

1. Ekran Görüntüsü Alma Komutları

PowerShell doğrudan ekran görüntüsü almak için yerleşik bir komuta sahip değildir. Ancak, bu işlemi yapmak için Windows API’lerini kullanabiliriz. Aşağıda, ekran görüntüsü almak için bir PowerShell betiği örneği verilmiştir:

# Ekran görüntüsü alma fonksiyonu
Add-Type -TypeDefinition @"
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

public class ScreenCapture
{
    public static void Capture(string fileName)
    {
        Rectangle bounds = Screen.PrimaryScreen.Bounds;
        using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height))
        {
            using (Graphics g = Graphics.FromImage(bitmap))
            {
                g.CopyFromScreen(bounds.Location, Point.Empty, bounds.Size);
            }
            bitmap.Save(fileName, ImageFormat.Png);
        }
    }
}
"@

# Ekran görüntüsünü belirli bir dosyaya kaydet
[ScreenCapture]::Capture("C:\EkranGoruntusu.png")

Bu betik, `System.Drawing` ve `System.Windows.Forms` kütüphanelerini kullanarak ekran görüntüsünü alır ve belirtilen dosya yoluna kaydeder.

2. Ekran Görüntüsünü Belirli Bir Bölgeden Alma

Ekran görüntüsünü belirli bir bölgeden almak istiyorsanız, `Rectangle` sınıfını kullanarak bölgeyi tanımlayabilirsiniz. Aşağıda bir örnek verilmiştir:

# Ekran görüntüsünü belirli bir bölgeden alma fonksiyonu
Add-Type -TypeDefinition @"
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

public class ScreenCapture
{
    public static void CaptureRegion(string fileName, int x, int y, int width, int height)
    {
        Rectangle bounds = new Rectangle(x, y, width, height);
        using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height))
        {
            using (Graphics g = Graphics.FromImage(bitmap))
            {
                g.CopyFromScreen(bounds.Location, Point.Empty, bounds.Size);
            }
            bitmap.Save(fileName, ImageFormat.Png);
        }
    }
}
"@

# Belirli bir bölgeden ekran görüntüsünü kaydet
[ScreenCapture]::CaptureRegion("C:\BolgedeEkranGoruntusu.png", 100, 100, 800, 600)

Bu betik, ekranın belirli bir bölgesinden ekran görüntüsü alır ve belirtilen dosya yoluna kaydeder.

3. Ekran Görüntüsünü Otomatikleştirme

Ekran görüntüsü alma işlemini belirli aralıklarla veya bir olay tetiklendiğinde otomatik olarak gerçekleştirmek için bir zamanlayıcı kullanabilirsiniz. İşte bir örnek:

# Ekran görüntüsü alma fonksiyonu ve zamanlayıcı
$scriptBlock = {
    [ScreenCapture]::Capture("C:\OtomatikEkranGoruntusu_" + (Get-Date -Format "yyyyMMdd_HHmmss") + ".png")
}

$timer = New-Object Timers.Timer
$timer.Interval = 60000 # 1 dakika
$timer.AutoReset = $true
$timer.Enabled = $true
$timer.add_Elapsed($scriptBlock)

Write-Host "Ekran görüntüsü alma işlemi başlatıldı. Kapatmak için Enter tuşuna basın..."
Read-Host
$timer.Stop()

Bu betik, her dakika bir ekran görüntüsü alır ve dosya adını tarih ve saat bilgisi ile kaydeder. Zamanlayıcıyı durdurmak için Enter tuşuna basabilirsiniz.

Sonuç

PowerShell ile ekran görüntüsü almak, çeşitli otomasyon ve raporlama işlemleri için kullanışlıdır. Yukarıdaki örnekler, ekran görüntüsünü alma ve kaydetme işlemlerini nasıl gerçekleştirebileceğinizi göstermektedir. Kendi ihtiyaçlarınıza göre bu betikleri özelleştirebilirsiniz.


Arif Akyüz Sistem Network Yöneticisi ve Siber Güvenlik Uzmanı
Arif Akyüz Sistem Network Yöneticisi ve Siber Güvenlik Uzmanı

Arif Akyüz
Bilgi Teknolojileri
Sistem Network Yöneticisi
ve Siber Güvenlik Uzmanı
[email protected]

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
© 2024 Arif Akyüz. Tüm Hakları Saklıdır. Gizlilik politikası
Yasal Uyarı: Bu sitede yer alan makaleler bilgi amaçlıdır ve hatalar içerebilir. Site sahibi, bu bilgilerin kullanımı sonucunda oluşabilecek zararlardan sorumlu tutulamaz.