Powershell de Çevre değişkeni kullanımı


powershellde çevre değişkeni kullanımı
Çevre değişkenleri (Environment variables) , programların çalıştığı ortamı tanımlayan değişkenlerdir , mesela Programların işlevlerini yerine getirebilmesi için sorduğu şu sorulara cevap verir ; Beni


çalıştıran kullanıcı hesabının adı nedir? Geçerli çalışma dizinim nedir? Windows hangi dizinde yüklüdür? Geçici dosyalar bu bilgisayarda nerede saklanır? ... Çevre değişkenleri kavramı, Linux'dan OS X ten , Windows işletim sistemine kadar birçok işletim sisteminde mevcuttur. Prensip olarak, aynı şeyi ifade ederler, ancak bunların uygulanma biçimleri ve kullanılan biçimleri farklıdır.

Çevre değişkenleri dinamiktir çünkü her bilgisayar farklı bir kurulum ve tasarıma (çevreye) sahip olabilir , mesela Bende Windows "C:\" dizininde kurulu ise çalıştırdan aşağıdaki komutu verdiğimizde "C:\Windows" dizini açılacaktır

%windir%

Oysa Üstteki aynı komut Windows işletim sistemi "D:\" dizininde kurulu birinde "D:\Windows" şeklinde açılacaktır. Bir script veya Program kodlarken bu değişkenler kodlayıcının işini oldukça kolaylaştırmaktadır bunun en somut örneğini Kullanıcı isminin geçtiği bir klasörde görebiliriz mesela aşağıdaki komutu çalıştırdığımda

%SYSTEMDRIVE%\Users\%USERNAME%

açtığı klasör yolu : "C:\Users\velociraptor" olacaktır kullanıcı ismi her bilgisyarda farklı olduğundan kod yazarken kullanıcı klasöründe işlem yaptırtacaksak çevre değişkenlerini kullanmamız gerekecektir.

Cmd çevre değişkenlerinin Powershelldeki karşılıkları

Windows PowerShell, görev otomasyonu ve yapılandırma yönetimi amacıyla Microsoft tarafından geliştirilen .NET framework tabanlı bir komut satırı aracıdır. Microsoft Powershelle oldukça önem veriyor hatta Komut istemi (Cmd) nin yerine kullanılması için planları var çünkü PowerShell, Komut İstemi'nden daha güçlü bir araçtır. Powershelli açmanın en kolay yolu çalıştırdan Powersehll komutu vermektir

powershell

Şimdi amacımız "%SYSTEMDRIVE%" klasörünün sürücü harfini öğrenmek olsun , hatırlarsak yazının başında ilk cümlemizde Environment variables ifadesini kullanmıştık Powershellde bunun kısaltması olarak "$env:" kullanılır dolayısı ile komutumuz $env:SystemDrive olacaktır , aşağıdaki resimde görüldüğü gibi çıktıyı C: olarak verdi

powershell çevre değişkeni komutları

Aşağıda Çevre değişkenlerinden bazılarının Powersehll karşılıkları verilmiştir
%appdata% = "$env:appdata
%programfiles% = $env:programfiles
%temp% = $env:temp
%userprofile% = $env:userprofile
%windir% = $env:windir
Bir uygulama üzerinde tüm bu anlatılanları pekiştirirsek ; Bir powershell komutu ile sistemimizde çalışan bütün servislerin isimlerini bulalım , bunu aşağıdaki komut yardımı ile yaparız

Get-Service | Where-Object {$_.Status -eq "Running"} | Select-Object Name

Komut bize liste halinde isimleri verecektir.

powershell ile çalışan servisleri listeletelim

Şimdi ise bu listeyi bir çıktı halinde Masaüstümüzde oluşturtalım bunun için orjinal koda aşağıdakini ilave etmemiz gerekir

Out-File $env:SystemDrive\Users\$env:UserName\Desktop\services_name.txt

Sayfa sonundaki linkte "servis_isimleri.ps1" i not defteri ile açıp içerisindeki kodu görebilirsiniz bu kodu alıp Yönetici yetkilerinde çalıştırılmış bir Powersehell konsolundan uygularsanız masaüstünüzde tüm çalışan servis isimlerinin yeraldığı "services_name.txt" isminde bir .txt dosyası oluçacaktır.

Çalışan servis listesi

Görüldüğü üzere Powershellde Çevre değişkeni diye tabir ettiğimiz Environment variables kullanımı zor değildir.

Download


4 Yorum Var

Yorum Ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Captcha