PowerShell nasıl açılır, tüm yöntemler. Windows PowerShell: nedir bu?

Windows 10 işletim sisteminin deneyimli kullanıcıları PowerShell komut satırı yardımcı programını duymuş olabilir. Windows 7 ve 8.1 ile çalışma deneyimi olanlar da buna aşina olabilir. Yıllarca Windows komut satırı uygulamasını ve .bat dosyalarını kullandıktan sonra, daha güçlü bir araçla tanışmanın zamanı geldi.

PowerShell, Windows araçları listesine değerli bir eklentidir ve kapsamı bazı kullanıcılar için korkutucu olabilir. Nedir bu; bir betik dili mi, yoksa bir komut kabuğu mu? Endişelenmeyin: Kapsamlı yeteneklere rağmen herkes PowerShell'de uzmanlaşabilir.

Adım 1: Kurulum

Öncelikle PowerShell yardımcı programının kendisine ihtiyacımız var. Windows 10 çalıştırıyorsanız, PowerShell'in 5. sürümü zaten yüklüdür. Windows 10 Yıldönümü Güncelleştirmesi 5.1 sürümünü kullanır, ancak fark fark edilmez. Windows 8 ve 8.1 PowerShell 4 kullanıyor ve bu da oldukça yeterli. PowerShell'i Windows 7'ye yüklemek sorun yaratmayacaktır ancak yine de birkaç ekstra adım atmanız gerekecektir. Özellikle .Net Framework'ü ek olarak yüklemeniz gerekir. PowerShell'i içeren Windows Yönetim Çerçevesini yükleyebilirsiniz.

PowerShell'in iki arayüzü vardır. İleri düzey kullanıcılar, Entegre Komut Dosyası Ortamı (ISE) olarak bilinen tam GUI arayüzünü tercih edebilir. Yeni başlayanlar için, basit bir metin tabanlı Windows komut satırı stili arayüzü olan PowerShell konsolunu ve hatta DOS 3.2'yi kullanmak en iyisidir.

PowerShell'i Windows 10'da yönetici olarak çalıştırmak için Başlat düğmesine tıklayın ve Windows PowerShell'e ilerleyin. Windows 8.1'de, Windows'taki Sistem klasöründe Windows PowerShell'i arayın. Windows 7'de kabuk, Donatılar klasöründe bulunur. Normal bir kullanıcı olarak PowerShell, sağ tuş yerine sol fare tuşu kullanılarak aynı şekilde başlatılabilir.

Aramayı Windows'un herhangi bir sürümünde kullanabilirsiniz. Gelecekte kullanım kolaylığı sağlamak için PowerShell'i görev çubuğuna sabitleyebilirsiniz.

Adım 2: Eski Windows Komutları

PowerShell'deki Windows komut sözdizimi her zamanki gibi çalışır. Örneğin, CD klasörleri değiştirir, yön geçerli klasördeki tüm dosya ve klasörlerin listesini gösterir.

PowerShell konsolunu nasıl başlattığınıza bağlı olarak şu şekilde başlayabilirsiniz: c:\Windows\system32 veya c'de :\Kullanıcılar\ . Ekran görüntüsündeki örnek şu komutu kullanıyor: CD..(boşluklu) her seferinde bir seviye yukarı çıkmak için, ardından komutu çalıştırın yön bir dizindeki dosya ve klasörlerin listesini görüntülemek için C:\.

3. Adım: Yardım Dosyalarını Yükleyin

Gibi takımlar CD Ve yön etkin PowerShell komutları değil. Bunlar, gerçek PowerShell komutlarının yerine geçen takma adlardır. Takma adlar, komut satırında kapsamlı deneyime sahip olanlar için kullanışlıdır. Ancak PowerShell'in derinliklerine dokunmuyorlar.

PowerShell'i kullanmaya başlamak için şunu yazın: yardım ve ihtiyacınız olan komut. Ekran görüntüsü komutu gösterir .

Takım yardımöyle diyor yön PowerShell komutunun takma adıdır Get-ChildItem. Eğer yazarsan get-childitem V PSC:\> komutunu kullanırken gördüğünüz şeyin aynısını göreceksiniz yön.

Ekran görüntüsünün alt kısmında belirtildiği gibi PowerShell için yardım dosyaları otomatik olarak yüklenmez. Bunları almak için PowerShell'i yönetici olarak çalıştırın ve şunu yazın: güncelleme-yardım. Yardım dosyalarının yüklenmesi birkaç dakika sürecektir; bazı modüller eksik olabilir; örneğin bu durumda, NetWNV Yardımı ve SecureBoot yüklenmemiştir. Her şey hazır olduğunda, eksiksiz yardım sistemi her zaman gerekli ipuçlarını sağlayacaktır.

Şimdi komutu yazın yardım al ve ilgilendiğiniz herhangi bir komut (PowerShell'de cmdlet, Rusça cmdlet'ler), açıklaması gösterilecektir. Örneğin, get-help get-childitem seçeneklerin bir listesini görüntüler get-childitem. Ayrıca farklı görüntüleyebilirsiniz olası seçenekler. Örneğin

get-help get-childitem -örnekler

yedi ayrıntılı kullanım örneği sağlar get-childitem. Takım

get-help get-childitem -detaylı

bu yedi örneği ve cmdlet'teki her parametrenin ayrıntılı açıklamalarını içerir get-childitem.

4. Adım: Ayarlarla ilgili yardım alın

Ekran görüntüsünde altında iki liste fark etmiş olabilirsiniz. SÖZDİZİMİİçin get-childitem. İki farklı sözdizimine sahip olmak, cmdlet'i çalıştırmanın iki yolu olduğu anlamına gelir. Sözdizimini birbirinden nasıl ayrı tutabilirim ve parametreler ne anlama geliyor? İşin püf noktasını biliyorsanız cevap basittir.

Cmdlet parametreleriyle ilgili ayrıntılar için get-childitem veya başka herhangi bir kullanım parametresi -tam dolu:

get-help get-childitem -ful

Bu size cmdlet ile neler yapabileceğinizin ve ne olacağının bir listesini verir. Ekran görüntüsüne bakın.

Parametre açıklamalarını incelediğinizde şunu fark edeceksiniz: get-childitem bir nesneyi elde etmeyi mümkün kılar çocuk(alt klasör adı veya dosya adı gibi) belirli karakterlerle eşleşen veya eşleşmeyen belirli bir konumda. Örneğin:

get-childItem “*.txt” -recurse

geçerli klasördeki ve tüm alt klasörlerdeki "*.txt" dosyalarının bir listesini döndürür (parametre nedeniyle -yineleme). Sırasında

get-childitem “HKLM:\Yazılım”

içindeki tüm üst düzey kayıt defteri anahtarlarının bir listesini döndürür HKEY_LOCAL_MACHINE\Yazılım.

Windows komut satırını veya .bat dosyalarını kullanarak kayıt defterine girmeyi denediyseniz, bu erişim seçeneğinin işlevselliğini takdir edeceksiniz.

Adım 5: İsimleri Öğrenme

Şu ana kadar gösterilen cmdlet'lerin benzer görünmesinin bir nedeni var: get-childitem, güncelleme-yardım, get-help tek bir fiil-isim kalıbı kullanın. Tüm PowerShell cmdlet'leri bu kuralı kullanır; tek bir isimden önce bir fiil kullanırlar. Bu, bir zamanlar VB ve VBA dillerinde tutarsız komut adlarından muzdarip olanların ilgisini çekecektir.

En yaygın cmdlet'lere bir göz atın:

ayar konumu: geçerli çalışma konumunu belirli bir konuma ayarlar

içerik alma: Dosyanın içeriğini alır

öğeyi al: Dosyaları ve klasörleri alır

kopya öğesi: bir nesneyi bir konumdan diğerine kopyalar

öğeyi kaldır: Dosyaları ve klasörleri siler

: Yerel veya uzak bir bilgisayarda çalışan işlemleri alır

hizmet alma: Hizmetlerin yerel veya uzak bir bilgisayarda çalışmasını sağlar

çağrı-web isteği: İnternetteki bir web sayfasından içerik alır

Belirli bir cmdlet'in nasıl çalıştığını görüntülemek için şunu kullanın: yardım al durumda olduğu gibi

get-help kopya öğesi -tam

Yardımdaki açıklamaya göre cmdlet'in neye ihtiyacı olduğunu anlayabilirsiniz. Örneğin, tüm dosya ve klasörleri kopyalamak istiyorsanız Belgeler V c:\sıcaklık, kullanmak

kopya öğesi c:\users\ \documents\* c:\temp

Bu komutu yazdığınızda PowerShell ortamının birçok ilginç özelliğini göreceksiniz. Örneğin, yazarsanız kopya-i ve Sekme düğmesine basın, PowerShell dolduracaktır Öğeyi Kopyala. Bir cmdlet'i yanlış yazarsanız ve PowerShell bunu tanıyamazsa neyin yanlış yapıldığına dair tam bir açıklama verilir.

Bu cmdlet'i deneyin:

invoke-webrequest askwoody.com

Web sayfasının başlıklarının, resimlerinin, bağlantılarının ve diğer içeriğinin kısa bir listesini alacaksınız. Lütfen not edin yardım al listeye çağrı-web isteği, "formların, bağlantıların, resimlerin ve diğer önemli HTML öğelerinin bir koleksiyonunu döndürür" - tam olarak ekranda gösterilmesi gereken şey.

Bazı cmdlet'ler PowerShell'in kendisini yönetmenize yardımcı olur:

komut alma: mevcut tüm cmdlet'lerin listesi

get-fiil: mevcut tüm fiillerin listesi

temiz ana bilgisayar: Ana bilgisayar programı ekranını temizleyin

Farklı parametreler, komutları azaltmanıza ve kullanışlı seçenek yelpazesini daraltmanıza olanak tanır. Örneğin, Windows hizmetleriyle çalışan tüm cmdlet'lerin listesini görmek için şunu yazın:

get-komut *-hizmet

İsimle birlikte kullanılabilen tüm fiiller gösterilecektir hizmet. İşte onların listesi:

Hizmet Al

Yeni Hizmet

Hizmeti Yeniden Başlat

Devam-Hizmet

Set-Servis

Başlangıç-Hizmet

Stop-Servis

Hizmeti Askıya Alma

Bu cmdlet'leri başkalarıyla birleştirebilirsiniz.

Adım 6: Boruları Kullanma

Windows komut satırına veya toplu iş dosyalarına aşina iseniz, yeniden yönlendirme ve kanallar hakkında bilgi sahibisiniz demektir. Yönlendirme (>sembol) ve borular (| sembol) bir eylemin sonucunu alıp başka bir konuma bağlar. Örneğin, komutun sonucunu yeniden yönlendirebilirsiniz. yön bir metin dosyasına aktarın veya komutun sonucunu iletin ping takıma bulmak gibi ilginç sonuçları filtrelemek için

dizin > temp.txt

ping askwoody.com | “paketler”i bulun > temp2.txt

İşte ikinci takımda bulmak bir dize arar paketler ekip tarafından askwoody.com adresinden alınmıştır. ping ve eşleşen tüm satırları adlı bir dosyada birleştirir. temp2.txt.

Bu komutlardan ilki PowerShell'de düzgün çalışıyor. İkinci komutu çalıştırmak için şöyle bir şeye ihtiyacınız olacak:

ping askwoody.com | seçme dizisi paketleri | temp2.txt dosyasının dışı

Yeniden yönlendirme ve yönlendirmeleri kullanmak, Windows komut satırının yeteneklerini büyük ölçüde artırır: Bir metin dizesini aramak için ekranı sonsuza kadar aşağı kaydırmak yerine, ihtiyacınız olan Windows komutlarını filtreleyebilirsiniz.

Powershell'in desteği var boru ve metinle sınırlı değildir. PowerShell, bir nesnenin tamamını bir cmdlet'ten diğerine aktarmanıza olanak tanır; burada nesne, bu verileri kullanabilen veriler (özellikler olarak adlandırılır) ve eylemlerden (yöntemler) oluşan bir kombinasyondur.

İşin zor kısmı nesneleri sıralarken ortaya çıkıyor. Bir cmdlet tarafından sağlanan nesnelerin, alıcı cmdlet tarafından kabul edilen nesnelerin türüyle eşleşmesi gerekir. Metin çok basit bir nesne türüdür; dolayısıyla metinle çalışıyorsanız nesneleri hizalamak basit bir iştir. Geri kalan nesneler o kadar basit değil.

Bunu nasıl anlayabilirim? Cmdlet'i kullan üye ol. Bir cmdlet'in ne tür bir nesneyi işlediğini bilmek istiyorsanız, onu çalıştırın. üye ol. Örneğin, bir bilgisayarda çalışan işlemleri anlamaya çalışıyorsanız ve seçeneklerinizi cmdlet'lere kadar daralttıysanız , cmdlet'lerin sonucunu şu şekilde öğrenebilirsiniz:

alma süreci | üye ol

Bu cmdlet'i çalıştırmak, aşağıdakiler için uzun bir özellik ve yöntem listesi oluşturur: ancak listenin en başında, oluşturulan nesnenin türünü görebilirsiniz. :

TürAdı: System.Diagnostics.Process

Aşağıdaki ekran görüntüsü aynı zamanda özellikleri de göstermektedir isminde get-process Tutamaçları, Ad, NPM, PM, SI, VM Ve W.S..

Sonucu değiştirmek istiyorsanız Bu cmdlet'le çalışmak için (monitörde etkin işlemlerin uzun bir listesini görüntülemek yerine), girdi olarak alan başka bir komut bulmanız gerekir. Sistem.Diagnostics.Process. İhtiyacınız olan cmdlet'i bulmak için PowerShell'i tekrar kullanın:

get-command -Parametertype System.Diagnostics.Process

Bu cmdlet, işleyebilen cmdlet'lerin bir listesini sağlar Sistem.Diagnostics.Process.

Bazı cmdlet'lerin neredeyse her türlü veriyi kabul etmesiyle bilinir. Bunların başında . Bu cmdlet, kanal yoluyla gönderilen her nesneden tek tek geçer ve belirtilen seçim kriterlerini ona uygular. Adı verilen özel bir işaretleyici var $_ Bu, borudaki her öğeyi teker teker kullanmanıza olanak tanır.

Diyelim ki "svchost" isimli bir bilgisayarda çalışan tüm işlemlerin bir listesini almak istiyorsunuz, yani özelliği eşleştirmek istiyorsunuz İsim işlem svchost. Şu komutu kullanın:

alma süreci | nerede-nesne ($_.Name -eq “svchost”)

Cmdlet'i her nesneye bakar Sistem.Diagnostics.Process, karşılaştırır .İsim"svchost" içeren bu nesne; eşleşmeler varsa bunlar monitörde görüntülenir. Ekran görüntüsüne bakın.

Adım 7: Faydalı PowerShell Komutlarını Analiz Edin

Artık bilgisayara zarar verebilecek kadar bilgi sahibisiniz, bu yüzden dikkatli olun. Örneğin sık sorulan PowerShell komutlarına bakalım.

Bu komutlar yalnızca Windows 10'da ve yalnızca PowerShell'i yönetici olarak çalıştırdığınızda çalışır. Önceden yüklenmiş Windows 10 uygulamalarını yeniden yüklemek için tasarlanmıştır ve bu programları ilk önce kaldıran ve daha sonra geri döndürmeye karar verenler için yararlı olabilir. Komutlar şöyle görünür:

Get-AppXPackage | Foreach (Add-AppxPackage -DisableDevelopmentMode -Register “$($_.InstallLocation)\AppXManifest.xml”)

Bu komutu çalıştırırsanız kırmızı uyarıları dikkate almayın ve komut tamamlandığında bilgisayarınızı yeniden başlatın; Windows 10'da önceden yüklenmiş tüm programlar yerlerinde görünecektir.

Bu komutun nasıl çalıştığı aşağıda açıklanmıştır. Get-AppXPackage kullanıcı profilindeki tüm uygulama paketlerini kontrol eder. Uygulamayı silseniz bile kullanıcı profili listesinde kalır.

Cmdlet'i Get-AppXPackage bir nesne döndürür TürAdı Microsoft.Windows.Appx.PackageManager.Commands.AppxPackage, şunları içerir Ad Soyad uygulama paketi ve karşılık gelen XML bildirim dosyasının konumu. Cmdlet'i çalıştırırsanız get-appxpackage, uygulama paketlerinin uzun bir listesini göreceksiniz. Ekran görüntüsü Xbox uygulamasının açıklamasını gösterir.

Cmdlet'i Foreach içindeki her nesnenin içinden geçer AppX Paketi bunları cmdlet'e göndererek Add-AppxPackage. Buna göre yardım alİçin Add-AppxPackage, iki anahtar anahtarı vardır:

  • Anahtar -Kayıt olmak uygulama paketlerinin mevcut kurulumlarını kaydetmek için kullanılır; parametreleri ayarlayabilirsiniz Geliştirme Modunu Devre Dışı Bırak Ve Kayıt olmak
  • Anahtar -Geliştirme Modunu Devre Dışı Bırak Windows'a devre dışı bırakılmış, kaydı silinmiş veya bozulmuş mevcut bir uygulama paketini yeniden kaydettirmesini söyler.

Astar " $($_.InstallLocation)\AppXManifest.x ml" dosyanın nerede bulunduğunu açıklar manifest.xml. Dosyalara bakarsanız AppXManifest.xml uygulama kimliklerinin, yürütülebilir dosyaların ve büyük sayı Uygulamayla ilişkili görsel öğeler.

Yeniden başlatmanın ardından eklenen tüm uygulama paketleri Windows Mağazasından indirilir ve yüklenir.

Herkese selam! Bugün konuyla ilgili kısa bir not, powershell'i yönetici olarak nasıl açabilirim?. PowerShell'in Microsoft'un güçlü bir programlama ve yönetim dili olduğunu, her yıl büyüdüğünü, her şeyin daha da büyüdüğünü hatırlatmama izin verin. büyük miktar cmdlet'ler ve işlevsellik. Esasen, Windows Komut İstemi'nin yerine geçer. Aşağıda onu açıp yapılandırmanıza izin veren yöntemleri ele alacağız.
.

PowerShell ek bileşenini açma yöntemleri

Powershell çok iyi gelişiyor ve Windows 10'un çıkmasıyla birlikte versiyon 4'ü de almış oldu ama bizim konumuz farklı. Peki powershell nasıl açılır? Windows XP'de ise her şey basit, o zaman hiçbir şey yok. Ayrı olarak teslim edildiğinden sonraki tüm sürümlerde yerleşik bir bileşen olarak gelir. Powershell'i açmanın en evrensel yolu tıklamaktır

Win + R ve powershell'e girin

Enter tuşuna bastığınızda PowerShell konsolu başlatılacaktır, tek sorun yönetici olarak açılmamasıdır. Ve sonuç olarak birçok komut yürütülmeyecektir; aşağıda yönetici adına bunun nasıl yapılacağını göreceğiz.

Windows 8.1 ve Windows 7'de Windows powershell'i yönetici olarak açma

Windows Powershell'i Başlat'tan açabilirsiniz. Windows 8.1 ve Windows 2012 R2'de Sistem Araçları - Windows'a gidin ve sağ tıklayıp Yönetici olarak çalıştır'ı seçin.

Windows 7 ve Windows 2008 R2'de şu şekilde görünür: Başlat > Donatılar > Windows PowerShell

Ayrıca görev öğesinde bir kısayol oluşturabilir ve üzerine sağ tıklayıp uygun öğeyi seçebilirsiniz.

PowerShell her zaman yönetici olarak açılsa daha iyi olur, uygulayalım. Bu, Windows'un tüm sürümlerinde aynı şekilde yapılır. Kontrol panelini açma

Üzerine sağ tıklayın ve Özellikler'i seçin. Sistemde bulunduğu dosyanın yolunu hemen görebilirsiniz.

"Gelişmiş" düğmesini tıklayın. Ek özellikler göreceksiniz. Yönetici olarak çalıştır kutusunu işaretlemeniz gereken yer.

Çok basit. Artık Windows Powershell'in nasıl açılacağına dair bir sorunuz olmayacağına eminim. Bir diğer yararlı şey ise powershell penceresindeki yazı tipini değiştirmektir.

Windows 10'da Başlat Düğmesi İçerik Menüsünden PowerShell Nasıl Açılır

Microsoft, komut satırından güçlü diline (PowerShell) giderek daha fazla önem veriyor ve yönetim yetenekleri nedeniyle bu mantıklıdır. işletim sistemleri Windows aileleri GUI'dekinden daha fazla olmasa da neredeyse sınırsızdır. Windows 10'un 1709 sürümünden başlayarak, bağlam menüsünde PowerShell, herkes için olağan cmd'nin yerini aldı. Windows 10'da başlat düğmesine sağ tıklayın ve içerik menüsü, uygun öğeyi seçin:

  1. Windows PowerShell
  2. Windows PowerShell (yönetici), Windows 10'da tam olarak maksimum haklara sahip moddur.

Windows 10'da Arama'yı kullanarak Windows PowerShell'i başlatın

Windows 10 ve daha eski sürümlerde PowerShell kabuğunu normal bir arama kullanarak bulabilirsiniz; bunun için özel bir bölüm vardır. Başlat düğmesinin yanındaki büyüteç simgesine tıklayın. Açılan arama formuna PowerShell kelimesini girin. Kabuğu bulacağınız tüm seçenekleri arayacaksınız. Üzerine sağ tıklarsanız yönetici olarak açabilirsiniz.

Windows 10'da Başlat menüsünden Windows PowerShell'i başlatma

PowerShell'i Başlat menüsünden açmak için açın ve Windows PowerShell öğesini bulun, klasör biçiminde olacaktır, açın ve uygun sürümü çalıştırın.

Sağ tıklarsanız Vershel kabuğunu yönetici haklarına sahip bir yönetici olarak çalıştırabilirsiniz.

Ek ve genel kabuk başlatma yöntemleri

Microsoft'un güçlü bir diliyle kabuk açmanın da çok özel yöntemleri vardır. En beceriksiz olanı, yürütülebilir dosyayı bulup doğrudan sistemdeki konumundan çalıştırmaktır. Aşağıdaki yolu izleyerek Windows 10'unuza gidelim:

C:\Kullanıcılar\kullanıcı adı\AppData\Roaming\Microsoft\Windows\Başlat Menüsü\Programlar\Windows PowerShell

Sonuç olarak, Başlat menüsünde kısayolların bulunduğu bir klasör göreceksiniz, bunları başlatabilirsiniz.

Ayrıca yol üzerinde bulunan orijinal yürütülebilir dosyayı da çalıştırabilirsiniz:

C:\Windows\System32\WindowsPowerShell\v1.0

Ve üzerine sağ tıklayarak, maksimum haklarla yönetici olarak indirebilirsiniz.

Windows PowerShell'i komut satırı penceresinden de başlatabilirsiniz; bunu yapmak için sihirli kelimeyi girmeniz ve Enter tuşuna basmanız yeterlidir.

Peki, size başlatma yöntemini de hatırlatmama izin verin yeni görev Görev Yöneticisi ek bileşeninden. "Görev Yöneticisi"ni açın, "Dosya - Yeni görevi çalıştır" menü öğesini seçin

Görünen pencerede PowerShell'i girin.

Bildiğim son yöntem, PowerShell'i Windows 10 Explorer aracılığıyla başlatmaktır, bunu yapmak için Explorer'ı açın, "Dosya - Windows PowerShell'i başlat" menü öğesini seçin, her iki mod da olacaktır.

PowerShell ISE Nedir?

Muhtemelen PowerShell ISE kısayolunun her yerde olduğunu fark etmişsinizdir ve bunun ne olduğunu bilmek istiyorsunuz. Özetle bu, Microsoft'un size sunduğu tüm cmdlet çeşitlerini kullanarak PowerShell'de komut dosyaları ve komut dosyaları yazabileceğiniz özel bir kabuktur.

Powershell yazı tipini değiştirmek çok basittir; özelliklerdeki Yazı Tipi sekmesine gidin; burada boyutu 5'ten 72'ye kadar ayarlayabilirsiniz.

Ayrıca özelliklere yardımcı program penceresinden de ulaşabilirsiniz, sol üst köşedeki simgeye tıklayıp özellikleri seçebilirsiniz.

Burada yazı tipi ayarları biraz farklıdır ve değiştikçe konsolun boyutu da değişir.

Renkler sekmesinde, yazı tipi rengini Powershell'de ve pencerenin kendisinde ayarlayabilirsiniz. Örneğin komut satırı gibi siyah yaparak.

Ayrıca aktif bir konsol kullanıcısıysanız arabellek boyutunu 50 komuta değil en az 100'e ayarlamanızı tavsiye ederim.

İlginiz için teşekkür ederiz. Bunlar Windows'ta Power Shell konsolunu açma yöntemleridir. Site materyali

PowerShell, kapsamlı işlevselliğe sahip alternatif bir komut satırıdır. Sistem süreçleri konusunda bilgili olan birçok bilgisayar sahibi, belirli süreçleri ve PC ayarlarını kendileri için değiştirmek için onu Windows 10'da ve bu yazılımın önceki sürümlerinde kullanma olanaklarıyla ilgilenmektedir.

PowerShell'i kullanmanın karmaşık bir yanı yoktur. Bu makaledeki tüm talimatları uygulamanız yeterlidir; başarılı olacaksınız.

Bu konuda uzman değilseniz, komut satırlarını ve bunlarda gerçekleştirilebilecek eylemleri yeni incelemeye başlıyorsanız, böyle bir uygulamayı kullanmayla ilgili ana soruların yanıtlarını bilmeniz faydalı olacaktır. Örneğin, Windows PowerShell ISE Windows 10'un nasıl çalıştırılacağı ve komut dosyalarının nasıl yazılacağı ve çalışılacağı.

PowerShell nasıl açılır?

Bu, aşağıdaki yollardan birkaçıyla yapılabilir:

  • - Uygulamayı genel bileşen listesinde W harfinin altında bulacaksınız.
  • Görev Çubuğundaki aramayı kullanarak açın ve aramak için PowerShell kelimesini girin.
  • “Çalıştır” menüsünü kullanarak Win + R kombinasyonuyla çalıştırın ve yardımcı programın adını yazın, ardından sistemde bulunacaktır.
  • Commander'da PowerShell eylemini ayarlayın; ancak uygulamayla ayrı bir pencerede değil, halihazırda çalışan bir hat üzerinden çalışacağınızı bilmelisiniz.
  • Windows Ayarları'nda Görev Çubuğu Özellikleri'ni ve Başlat Menüsü'nü seçin. “Gezinme” sekmesinde, “Komut satırını PowerShell ile değiştir…” seçeneğinin yanındaki kutuyu işaretleyin. Artık yardımcı programı Win+X kombinasyonunu kullanarak etkinleştirebilirsiniz.

Komut dosyaları nasıl yazılır ve çalıştırılır?

PowerShell betiği nasıl oluşturulup çalıştırılır? Bu basitçe bir not defterinde yapılabilir - onu kullanarak yeni belgede ihtiyacınız olan komutları belirtin. Ardından kaydedin, ancak formatı .ps1 olarak değiştirin - bu, bu sistem yardımcı programının dosyalarının sahip olduğu uzantıdır.

Komut dosyalarını uygulamanın kendisine şu şekilde yazabilirsiniz:

  • Çalıştırın.
  • “Oluştur” öğesine tıklayın.
  • Veya “Dosya”ya tıklayın ve beliren listeden “Oluştur”u seçin.
  • Yürütülmesi gereken tüm komutları yazın, dosyayı kaydedin.

Komut dosyaları hala FAR Manager'da yazılabilir ve düzenlenebilir, ancak böyle bir uygulamada doğrudan kullanılamazlar çünkü bu tür dosyaları standart cmd satırı aracılığıyla görüntüler. Ancak diğer eylemler “yerel” yardımcı programdakiyle aynı şekilde gerçekleştirilir.

Komut dosyasını şu şekilde çalıştırabilirsiniz:

  1. PowerShell'de yönetici olarak oturum açın.
  2. Gerekli dosyanın konumunu belirtmek için cd komutlarını kullanın. Örneğin, e: cd\ cd iş .\ dosya adı. Ps1 veya e: \iş\dosyaadı.ps1
  3. Bu durumda e: dosyanın bulunduğu sabit sürücünün adıdır.
  4. Enter'a basın.

Komutu ilk kez çalıştırdığınızda program size mutlaka “___ .Ps1 dosyası yüklenemiyor çünkü bu sistemde script çalıştırılması yasaktır...” şeklinde bir mesaj gösterecektir. Gerçek şu ki, Windows, geliştiriciler sayesinde müdahaleye karşı koruma ile donatılmıştır, bu nedenle hiçbir kullanıcının varsayılan olarak bu tür eylemleri gerçekleştirme erişimi yoktur. Ancak bu sınırlama çok kolay bir şekilde aşılabilir.

Nasıl? Hatayla birlikte görünen metin, get-help about_signing komutunun girilmesini önerecektir. daha fazla bilgi. Bu talimatları takip edebilir veya Set-ExecutionPolicy uzaktan imzalı kombinasyonunu kullanabilirsiniz; girdikten sonra onay gerekecek ve kısıtlama kaldırılacaktır.

Kullanımla ilgili diğer sorular

Birçok kişinin bir sorusu var: PowerShell sürümünü nasıl öğrenebilirim? Bunu yapmak için aşağıdakileri yapın:

  1. $PSVersionTable'ı girin.
  2. Eğer bu hiçbir sonuca yol açmazsa, o zaman sürüm 1.0'a sahipsiniz - bunun için bir $host.version komutu var.
  3. Aksi taktirde PC'de uygulamanın hangi versiyonunun kurulu olduğuna dair detaylı bilgi karşınıza çıkacaktır.

PowerShell'den program çalıştırma

Herhangi bir yürütülebilir dosyayı (program veya komut satırı yardımcı programı) PowerShell'den çalıştırma görevi oldukça sık gerçekleşir. PowerShell bunun için çeşitli seçenekler sunar. çeşitli şekillerde, bunu bu makalenin ilerleyen kısımlarında ele alacağız. En basitinden başlayalım...

Doğrudan başlatma

PowerShell'de yürütülebilir bir dosyayı çalıştırmanın en kolay yolu, dosyanın bulunduğu dizine gidip onu doğrudan çalıştırmaktır. Örneğin, bir selamlama görüntüleyen basit bir programı alalım ve onu şu komutla çalıştıralım:

Konum Ayarı ″C:\Program Dosyaları″
.\Merhaba.exe

İstediğiniz dizinde olsanız bile yürütülebilir dosyanın ilgili yolunu belirtmeniz gerektiğini lütfen unutmayın. Bunun istisnası, ortam değişkeninde (yol) listelenen dizinlerdeki dosyalardır. Örneğin, Windows\System32 dizininde bulunan çeşitli yerleşik programlar ve yardımcı programlar (notepad, calc, ping vb.) yol belirtilmeden başlatılabilir.

Operatör ve

Yürütülebilir dosyanın tam yolunu belirtmeniz gerekiyorsa operatörünü kullanabilirsiniz. & (operatörü arayın). Alıntılanan bir metin dizesini tek bir komut olarak yürütmenize olanak tanır. Örneğin:

& ′C:\Program Dosyaları\Hello.exe′

& operatörü iletilen komutu ayrıştırmadığı için parametrelerini yorumlayamaz. Bu nedenle, ek parametreler\argümanlar da metin olarak tırnak içinde iletilir. Örnek olarak, önceki programı alalım ve istenen metni argüman olarak kabul edecek şekilde biraz değiştirelim:

& ′C:\Program Files\Hello.exe′ `Merhaba dünya′

İstenirse virgülle ayrılmış birden çok bağımsız değişken belirtebilirsiniz:

& ′C:\Program Files\Hello.exe′ `Merhaba,′, ′ dünya′

Kolaylık sağlamak için komut ve argümanlar değişkenlere yerleştirilebilir:

$exe = 'C:\Program Dosyaları\Hello.exe'
$arg1 = 'Merhaba'
$arg2 = 'dünya'
& $exe $arg1 $arg2

Pek çok argüman varsa, bunlar aşağıdaki yapı kullanılarak birleştirilebilir:

$exe = 'C:\Program Dosyaları\Hello.exe'
$allargs = @('Merhaba,′,′dünya′)
& $exe $allargs

Çağır-İfade

Invoke-Expression cmdlet'i & operatörüyle hemen hemen aynı şekilde çalışır; bir metin dizesi alır ve onu komut olarak çalıştırır. Örneğin:

Çağırma İfadesi -Komut ′C:\Windows\Hello.exe′

Ancak büyük bir dezavantajı var, yani boşluklarla çalışamamak. Örneğin aşağıdaki komut hataya neden olacaktır:

Çağırma İfadesi -Komut ′C:\Program Files\Hello.exe′

Bu özellik cmdlet'in kullanımını son derece zahmetli hale getirir. Bununla birlikte, gerekirse, ek alıntılar kullanılarak bu tür hatalardan kaçınılabilir, örneğin:

Çağırma İfadesi -Komut ″C:\′Program Files′\Hello.exe″

Başlatma Süreci

İşlem Başlat cmdlet'i, belirtilen dosyayı yöntemi kullanarak bir işlem olarak başlatır. Başlangıç.NET sınıfı İşlem. Örneğin:

Başlatma İşlemi -FilePath ′C:\Program Files\Hello.exe′

Varsayılan olarak işlem, işlem tamamlandığında kapanan ayrı bir pencerede çalışır. Bu davranışı parametreleri kullanarak değiştirebilirsiniz, böylece aşağıdaki komut geçerli pencerede çalışacaktır:

Başlatma İşlemi -FilePath ′C:\Program Files\Hello.exe′ -NoNewWindow -Wait

Start-Process ayrıca sürece ek argümanlar aktarmanıza da olanak tanır:

Başlat-İşlem -FilePath ′C:\Program Files\Hello.exe′ -ArgumentList ′Merhaba, dünya′ -NoNewWindow -Wait

Varsayılan olarak cmdlet hiçbir şey döndürmez, ancak onu bir işlem nesnesi döndürmeye zorlamak için -PassThru parametresini kullanabilirsiniz. Bu nesneyi bir değişkene yerleştirmek çok uygundur:

$işlem = İşlem Başlat -DosyaYolu ′C:\Program Files\Hello.exe′ -Wait -PassThru

bundan sonra durum gibi birçok yararlı şeyi öğrenebilirsiniz:

$process.HasExited

$process.ExitTime

veya yürütme kodu:

$process.ExitCode

.AÇIK

Prensip olarak .NET Process sınıfı, Start-Process cmdlet'i olmadan doğrudan kullanılabilir. Örneğin işlemi şu komutla başlatabilirsiniz:

::Başlat('C:\Program Dosyaları\Merhaba.exe')

Bu yöntem oldukça zahmetli ve hantaldır (bence), ancak kullanımı biraz daha esnektir. Örneğin, programımızı mevcut pencerede çalıştıralım, ona argümanlar iletelim ve yürütme sonucunu alalım:

$process = New-Object -TypeName System.Diagnostics.Process
$process.StartInfo.FileName = ″C:\Program Files\Hello.exe″
$process.StartInfo.Arguments = ″Merhaba dünya″
$process.StartInfo.RedirectStandardOutput = $true
$process.StartInfo.UseShellExecute = $false
$process.Start()
$process.WaitForExit()

$process.StandatdOutput.ReadToEnd()

WMI

WMI ile program çalıştırmak dahil hemen hemen her şeyi yapabilirsiniz. Yöntem bunun için oldukça uygun. Yaratmak WMI sınıfı Win32_Process. Bu yöntem, yerel veya uzak bilgisayarda RPC aracılığıyla bir işlem başlatır. Örneğin yerel bilgisayarda bir program çalıştırmak için aşağıdaki komutu kullanabilirsiniz:

()″Win32_Process″).Create('C:\Program Files\Hello.exe′)

Uzak bir bilgisayarda çalıştırmak için komut şu şekilde görünecektir:

()″\\uzak bilgisayar\kök\cimv2:Win32_Process″).Create('C:\Program Files\Hello.exe′)

Alternatif olarak Invoke-WmiMethod cmdlet'ini kullanabilirsiniz:

Invoke-WmiMethod -Sınıf Win32_Process -Ad Oluştur -ArgumentList ″C:\Program Files\Hello.exe″

Veya Invoke-CimMethod cmdlet'ini kullanarak:

Invoke-CimMethod -ClassName Win32_Process -MethodName Create -Arguments @(CommandLine=″C:\Program Files\Hello.exe″)

WMI, işlemi ayrı bir pencerede başlatır ve işlem kimliğini (ProcessID) ve yürütme sonucunu (ReturnValue) içeren bir nesneyi döndürür. ReturnValue aşağıdaki değerleri alabilir:

0 — Başarılı Tamamlama
2 -Erişim engellendi
3 — Yetersiz Ayrıcalık
8 —Bilinmeyen Arıza
9 — Yol Bulunamadı
21 - Geçersiz Parametre

Çağır-Komut

Invoke-Command cmdlet'i, WinRM'yi kullanarak yerel veya uzak bir bilgisayarda komutları çalıştırabilir. Örneğin programımızı yerel bilgisayarda çalıştırmak için şu komutu kullanırız:

Invoke-Command -ScriptBlock (″C:\′Program Files′\Hello.exe″)

Gerekirse programa argümanlar iletebilirsiniz:

Invoke-Command -ScriptBlock (C:\′Program Files′\Hello.exe ″Merhaba, dünya″)

Invoke-Command'ın boşluklarla pek uyumlu olmadığını lütfen unutmayın, bu nedenle hataları önlemek için tırnak işaretleri konusunda yaratıcı olmanız gerekir. Bununla birlikte, örneğin cmdlet'in kullanımını & operatörüyle birleştirerek bu tür sorunlardan kaçınılabilir:

Invoke-Command -ScriptBlock (& ​​'C:\Program Files\Hello.exe')

Invoke-Command esas olarak uzaktan kontrol için kullanılır; ana avantajı, birden fazla bilgisayarda aynı anda yürütülebilmesidir. Örneğin:

Invoke-Command -ScriptBlock (″C:\′Program Files′\Hello.exe″) -BilgisayarAdı SRV1,SRV2,SRV3

$scriptblock = (″C:\′Program Dosyaları′\Hello.exe″)
$Bilgisayarlar = @('SRV1′,′SRV2′,′SRV3′)
Invoke-Command -ScriptBlock $scriptblock -ComputerName $Computers

Varsayılan olarak cmdlet, programın yürütülmesinin sonucunu döndürür ve onu arka planda çalıştırırsanız (-AsJob parametresi), bir Job nesnesi döndürür:

Invoke-Command -ScriptBlock (C:\′Program Files′\Hello.exe) -ComputerName localhost -AsJob -JobName Hello

Çağır-Öğe

Invoke-Item cmdlet'i bir dosyaya varsayılan bir eylem uygulamak için tasarlanmıştır. Böylece yürütülebilir dosyayı şu komutla çalıştırabilirsiniz:

Çağır-Öğe -Yol ″C:\Program Files\Hello.exe″

Ancak, belirli bir dosya türünü açmak için Invoke-Item'ı kullanmak en uygunudur. Örneğin bir metin dosyasını şu şekilde açıyoruz:

Çağır-Öğe -Yol ″C:\Files\test.txt″

Ve işte klasördeki tüm metin dosyaları:

Çağır-Öğe -Yol ″C:\Files\*.txt″

CMD

Sonuç olarak, PowerShell'den program başlatmanın başka bir yolu da cmd kabuğunu kullanmaktır. Yöntem oldukça “dolaylı” ama yine de işe yarıyor. Sonraki komut yeni bir cmd örneği başlatır, içinde belirtilen programı çalıştırır, cmd'den çıkar ve sonucu döndürür:

cmd /c ″C:\Program Dosyaları\Merhaba.exe″

PoSh, bir programı başlatmak için çok sayıda yol sunar. Ve her biri belirli durumlar için iyidir.

Bu arada makale PowerShell: Deep Dive and Best Practice temel alınarak yazılmıştır. Okumanızı tavsiye ederim, orada hala pek çok ilginç şey var.

Komut dosyasını çalıştırmanın birkaç farklı yolu vardır; başlıcaları aşağıdadır:

  1. PowerShell'i başlatın ve içindeki betiği çalıştırın (dosyanın yolunu ve dosya adını girin; örneğin, şu şekilde: C:\Scripts\test.ps1 veya cd C:\Scripts komutuyla betik klasörüne gidin ve çalıştırın. komutuyla.\test.ps1) Kabuk birçok şekilde bulunabilir ve başlatılabilir. Bunun bir yolu Başlat menüsünden geçer. Windows 7 için - "Tüm Programlar" - "Donatılar" - "Windows PowerShell" seçeneğine gitmeniz ve "Windows PowerShell" kabuğunu başlatmanız gerekir. Windows 10 için - "W" harfli grubu bulmanız gerekir ve içinde "Windows PowerShell" i bulacaksınız.
  2. "Windows PowerShell ISE"yi başlatın bir programdır - varsayılan olarak PowerShell'in kendisiyle birlikte kullanılabilen PowerShell komut dosyalarını düzenlemenize ve hata ayıklamanıza olanak tanıyan bir geliştirme ortamıdır. Başlattıktan sonra, "Aç" düğmesini tıklamanız veya Dosya - Aç menüsüne gitmeniz ve istediğiniz komut dosyasını seçmeniz, ardından F5 veya "Komut Dosyasını Çalıştır" düğmesine basmanız yeterlidir. Windows PowerShell ISE'yi aynı yerde bulabilirsiniz. PowerShell kabuğu - Başlat menüsünde.
  3. Standart komut satırını başlat ve içine şunu yazın:
    powershell dosyası<имя_скрипта> (örnek: powershell -myscript.ps1 dosyası)

Daha önce PowerShell betiklerini çalıştırmadıysanız büyük olasılıkla aşağıdaki iletiyi alırsınız: Dosya indirilemiyor<имя_скрипта>, çünkü bu sistem için komut dosyasının çalıştırılması yasaklanmıştır. Daha fazla bilgi için "get-help about_signing" yazın. Bunun nedeni, güvenlik nedeniyle ve kötü amaçlı kodun yanlışlıkla yürütülmesini önlemek için tüm komut dosyalarının dijital olarak imzalanması gerektiğidir.

İmzasız bir PowerShell betiğinin yürütülmesine nasıl izin verilir?

1. PowerShell'de, betiği çalıştırmadan önce, geçerli kabuk oturumu için imzasız betiklerin yürütülmesine izin vermek üzere komutu çalıştırın:

Set-ExecutionPolicy RemoteSigned -Scope Süreci

2. Başlangıçta standart komut satırından-executionpolicy parametresini kullanın; betiği şu şekilde çalıştırın:

<имя_скрипта>

Her iki yöntem de politikayı yalnızca geçerli oturum için ayarlarken, kayıt defterinde yazılan PowerShell betiklerinin yürütülmesine ilişkin güvenlik politikası değişmeyecek ve aynı kalacaktır. Komut dosyası yürütme güvenlik politikasını "kalıcı" olarak değiştirmek istiyorsanız şu yöntemi kullanın:

3. Başlatmaya sonsuza kadar izin ver: PowerShell'i Yönetici olarak başlatın, ardından şu komutu çalıştırın:

Set-ExecutionPolicy RemoteSigned

Not: Komut dosyası İnternetten indirildiyse, başlatmayı onaylama isteğini önlemek için RemoteSigned yerine Bypass'ı kullanmanız gerekir - tüm istekleri ve uyarıları tamamen devre dışı bırakır.

Arka planda bir PowerShell betiği nasıl çalıştırılır?

Bunu yapmak için, aşağıdaki değerleri alabilen -WindowStyle başlatma parametresini kullanmanız yeterlidir: Normal, Küçültülmüş, Büyütülmüş ve Gizli. Bu nedenle, arka planda imzasız bir komut dosyasını çalıştırmak için şu komutu çalıştırmanız gerekir:

powershell -executionpolicy RemoteSigned -WindowStyle Gizli -dosya<имя_скрипта>

Ayrıca isterseniz -NonInteractive de ekleyebilirsiniz, böylece script herhangi bir soru sormaz. Böylece script kullanıcı tarafından fark edilmeden çalıştırılacaktır. Bu yöntemi kullanırken dikkatli olun.

Parametrelerle bir PowerShell betiğini çalıştırma

Gerçek başlatma, normal bir programı veya parametreler içeren bir yarasa dosyasını başlatıyormuşsunuz gibi yapılmalıdır. Örneğin, komut satırından parametreler içeren bir komut dosyasını çalıştırmak için aşağıdaki komutu yazabilirsiniz:

powershell -executionpolicy RemoteSigned -dosyası<имя_скрипта>param1 param2 "başka bir metin parametresi"

Komut dosyasının kendisinde bu parametreleri şu şekilde alabilirsiniz:

Param ($var1, $var2, $var3) echo $var1, $var2, $var3

PowerShell ISE'de, komut bölmesini kullanarak parametreler içeren bir betiği aynı şekilde çalıştırabilirsiniz.

Kısayol kullanarak PowerShell betiği nasıl çalıştırılır?

Bu görev iki şekilde gerçekleştirilebilir:

  1. Komut dosyasını çalıştırmak için komut yazacağınız bir yarasa/cmd dosyası oluşturun (yukarıdaki parametreleri okudunuz)
  2. c:\Windows\System32\WindowsPowerShell\v klasöründe bulunabilecek PowerShell'e bir kısayol oluşturun<версия>\ ve "Nesne" alanındaki kısayol özelliklerine gerekli parametreleri ekleyin.

Bu nedenle, örneğin kullanıcı oturum açtığında bir powershell betiğini çalıştırmak için, 2. maddede anlatıldığı gibi bir kısayol oluşturabilir ve bunu başlangıca yerleştirebilirsiniz. Ayrıca yukarıdaki yöntemlerden birini kullanarak bir kısayol oluşturmak, betiği yönetici olarak veya normal bir program gibi başka bir kullanıcı olarak kolayca çalıştırmanıza olanak sağlayacaktır.

PowerShell betik dili, çeşitli sorunları çözmek için oldukça güçlü bir araçtır ancak yalnızca iyi şeyler için değil kötü şeyler için de kullanılabilir; bu nedenle onu akıllıca kullanın;)



Bir hata bulursanız lütfen bir metin parçası seçin ve Ctrl+Enter tuşlarına basın.