11Sep

Windows Programlarının Windows 10'un Bash Kabuğundan Nasıl Çalıştırılır

click fraud protection

Creators Update'te Windows 10'un Bash kabuğu, doğrudan Bash'den Windows ikili dosyalarını ve standart Komut Satırı komutlarını çalıştırmanızı sağlar. Hem Linux hem de Windows programlarını aynı Bash kabuğundan çalıştırabilir veya hatta Windows komutlarını bir Bash komut dosyasına dahil edebilirsiniz.

Bilmeniz Gerekenler

Bu özellik hakkında bilmeniz gereken bazı temel ayrıntılar aşağıda belirtilmiştir:

  • Kullanıcı Hesabı : Bash kabuğundan başlatılan programlar, geçerli Windows kullanıcı hesabı tarafından başlatılmış gibi çalışacaktır.
  • İzinleri : Bu programların Bash.exe işlemi ile aynı izinleri olacaktır. Bu komutların Yönetici erişimine sahip olmasını istiyorsanız, Bash kabuğunu Yönetici olarak çalıştırmanız gerekir.
  • Çalışma Dizini : Windows programları, Bash kabuğu ile aynı "çalışma dizini" ni paylaşır. Bu nedenle, geçerli dizinin içeriğini listeleyen bir komutu çalıştırırsanız, geçerli çalışma dizininin içeriğini Bash kabuğunda listeleyecektir.Çalışma dizinlerini değiştirmek için cd komutunu kullanın.
instagram viewer

Bunu göz önünde bulundurarak, bir programın nasıl çalıştırılacağına bir göz atalım.

Bir Windows Programını Çalıştırma

Bir Windows programını çalıştırmak için, teh Bash kabuğunda programın. exe dosyasının yolunu girin. Windows C: sürücünüzün Bash'te /mnt/ c'de mevcut olduğunu unutmayın. Bash ortamı da büyük-küçük harf duyarlı olduğundan doğru büyük harf kullanımını belirtmeniz gerekir.

C: \ Windows \ System32 \ PING.EXE'de bulunan Ping yardımcı programını başlatmak istediğinizi varsayalım. Aşağıdaki komutu çalıştırırsınız:

/mnt/c/Windows/System32/ PING.EXE

Boşluk büyük / küçük harf duyarlı olduğundan aşağıdaki komut çalışmaz:

/mnt/c/windows/system32/ ping.exe

Yol karmaşık karakterler( boşluklar ve parantezler) içeriyorsa, bu biraz daha karmaşıktır, Program Files klasörleri gibi. Onlara "\" karakteri önek ekleyerek boşlukları, köşeli parantezleri ve diğer karmaşık karakterleri "kaçış" yapmalısınız.

Örneğin, C: \ Program Files( x86) \ Internet Explorer \ iexplore.exe'de bulunan Internet Explorer programını çalıştırmak istediğini varsayalım. Bash'de şu komutu çalıştırmanız gerekir:

/mnt/c/ Program \ Dosyalar \ \( x86 \) / Internet \ Explorer / iexplore.exe

Boşluk ve köşeli ayraç karakterlerinden önce "\" işaretleyin. Bu karakterlerin "kaçılması" gerekir veya Bash, karakterlerin dosya yolunun bir parçası olduğunu fark etmez.

Bir Bağımsız Değişken Bir Komut

'ye Nasıl Aktarılır Bash kabuğu doğrudan bağımsız değişkenleri çalıştırdığınız komutlara geçirir.

Örneğin example.com'a ping yapmak isterseniz şunları çalıştırırsınız:

/mnt/c/Windows/System32/ PING.EXE example.com

Veya Windows ana bilgisayar dosyasını Not Defteri'nde açmak isterseniz şunu çalıştırırsınız:

/mnt/c/Windows/System32/ notepad.exe "C: \ Windows \ System32 \ drivers \ etc \ hosts "

Bir dosya yolunu doğrudan bir Windows programına aktarırken standart Windows dosya yolunu kullanırsınız. Bash argümanı direkt olarak geçtiği için. Notepad.exe ve diğer Windows programları bir Windows dosya yolu bekler.

Dahili Komut

Nasıl Çalıştırılır Bazı Windows komutları. exe dosyaları değil, Komut İstemi'nin kendisinde yerleşiktir.Örneğin, normalde bir Komut İstemi'nde çalıştırabileceğiniz dir komutu bulunur. Böyle bir komutu çalıştırmak için Komut İstemi ile ilişkili cmd.exe ikili dosyasını çalıştırmanız ve komutu bir argüman olarak / C ile iletmeniz gerekir:

/mnt/c/Windows/System32/ cmd.exe / C komutu

Örneğin, dir'i çalıştırmak içinkomutu komut istemine yerleştirirseniz, aşağıdaki komutu çalıştırırsınız:

/mnt/c/Windows/System32/ cmd.exe / C dir

Yollara Dizinler Ekleme

Windows İçin Hizmetler Linux ortamı, Windows çalıştırılabilir dosyalarını Linux ikili dosyalarına benzer şekilde değerlendirir. Bu, yola. exe dosyaları içeren bir dizin ekleyebileceğiniz ve ardından bu. exe dosyalarını doğrudan uygulayabileceğiniz anlamına gelir.Örneğin, System32 dizinini yolunuza eklemek için şunları çalıştırırsınız:

export PATH = $ PATH: /mnt/c/Windows/ System32

Daha sonra System32 klasöründe bulunan Windows. exe dosyalarını doğrudan çalıştırabilirsiniz:

PING.exe örneği.com notepad.exe cmd.exe / C dir

Bir komutun çıktısını başka bir

'ye nasıl yöneltilir

Bir Windows komutunun çıktısı bir Linux komutuna yönlendirilebilir ve tersi de olabilir.Örneğin, ağ arabirimlerinizle ilgili ayrıntıları listelemek ve çıktıyı aramak için Linux grep komutuna yönlendirmek için ipconfig.exe -all komutunu kullanabilirsiniz.Örneğin, bağlantınız hakkındaki tüm bilgileri listelemek ve "IPv4 Adresi" ile eşleşen bölümleri aramak için şunları çalıştırırsınız:

/mnt/c/Windows/System32/ ipconfig.exe -all |grep "IPv4 Address"

Temel işlem budur. Bu komutlar ayrıca bir Bash komut dosyasına dahil edildiğinde de çalışır; bu nedenle hem Windows komutlarını hem de Linux yardımcı programlarını içeren bir Bash komut dosyası yazabilirsiniz. Eğer Bash kabuğunda çalışıyorsa, bir Bash komut dosyası içinde çalışacaktır.

Ve diğer yönden gitmek isterseniz, standart Windows Komut İstemi'nden Bash komutlarını çalıştırmak için "bash -c" komutunu kullanabilirsiniz.

İLGİLİ MAKALELER
Windows 10'da Bash Kabuk Komut Dosyalarını Oluşturma ve Çalıştırma
Windows 10'da Bash Kabuğunun Dışından Linux Komutlarını Çalıştırma Nasıl Yapılır