Windows'taki herhangi bir komut satırından çalıştırabilmeniz için bir .exe dosyasını “kaydettirin”


152

Bir .exe dosyasına Windows komut penceresindeki herhangi bir konumdan nasıl erişebilirsiniz? Girilmesi gereken bir kayıt defteri girdisi var mı?


Yanıtlar:


97

Exe'nin PATHortam değişkenindeki bir klasörde olduğundan emin olmanız gerekir .

Bunu, üzerinde zaten bulunan bir klasöre yükleyerek PATHveya klasörünüze ekleyerek yapabilirsiniz PATH.

Yükleyicinizin bunu yapmasını sağlayabilirsiniz - ancak alındığından emin olmak için makineyi yeniden başlatmanız gerekir.


Bu cevap neredeyse her zaman yanlıştır. En azından eksik. Özellikle, bu yaklaşım KURULUM için iyi çalışır, ancak kaldırma için iyi değildir. Çoğu kaldırıcı, bununla ilişkili uygulamayı kaldırırken PATH değişkeninin tamamını WHIPE yapar. Bu nedenle, dizin PATH'e eklemek için bir yükleme eylemi yazarsanız, genel kaldırma paketi tarafından otomatik olarak kaldırılmayan bir ÖZEL yükleme işlemi yapmalısınız. Ardından, Özel yükleme adımını, yalnızca yönünüzü PATH değişkeninden kaldıran bir kaldırma adımıyla eşleştirin.
Kim Gentes

21
@KimGentes iyi bu kaldırıcı ile ilgili bir sorun. İyi bir kaldırıcı güzelce toplanmalıdır. Cevabı yanlış yapmıyor.
ChrisF

3
Kabul ediyorum .. Bu yükleyici ile ilgili bir sorun. Ancak tüm yükleyiciler bunu değişkenlere yaptığından (kayıt defteri girdilerinin veya ENV VARIABLES bölümlerini ayrıştırmaz ve ayıklamaz), bunu açıklamak ihtiyatlı görünmektedir. Biri talimatları tam olarak takip ederse, her zaman bu konuya gireceklerdir, yani çözüm muhtemelen her zaman bu uyarıyı içermelidir. Hiçbir yükleme paketi, Kayıt Defteri girişlerinin veya ENV değişkenlerinin bölümlerini yüklemeye ve kaldırmaya özen göstermez, ancak bilmediğim bazı şeyler varsa lütfen bana bildirin.
Kim Gentes

Çevreyi "kurmak" yerine SETX komutuyla bir toplu iş dosyası kullanın: SETX PATH "C: \ Windows" ----- ve işiniz bitti.
Stavm

3
SETX de tehlikelidir, çünkü PATH değişkeninin kendisinden çok daha düşük bir uzunluk sınırına sahiptir ve başarısız olmak yerine kısalır.
Ben Voigt

48

Aşağıdaki kayıt defteri anahtarını ekleyebilirsiniz :

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\myexe.exe

Bu anahtarda, exe dosyasına giden yolu içeren varsayılan dize değerini ekleyin.


1
@sherdim: Bundan çok şüpheliyim. Ancak, her zaman startkomutla çalıştı , bu yüzden start myexebir cmd.exe istemi yazabilirsiniz . Ancak myexetek başına çalışmamalı, bence (eğer dizinde değilseniz myexeveya bu PATHdeğişken ortam değişkeninde değilse ).
Andreas Rejbrand

Ben sadece myprog.cmdaşağıdaki içeriğe sahip küçük bir dosya yapmak : @START myprog.exe %*Bu App Pathsgirişi çağırır myprog.exeve tüm komut argümanları iletir. Dosya erişilebilir bir yerde oluşturulmalıdırPATH
Stavr00

1
@sherdim @ andreas-rejbrand Eğer myexe değilse bu windows 10 üzerinde çalışmadığını onaylayabilirsiniz PATH. start myexeBu kayıt defteri değişikliği ile çalışır olmadan için myexe ekleyerek PATH.
davenpcj

@davenpcj: Gerçekten. Bahsettiğim kayıt defteri anahtarı, komut istemiyle değil, Windows kabuğuyla ilgilidir. Yani start myappçalışır, Win + R yanı sıra , cmd.exe myappbir düz değil myapp.
Andreas Rejbrand

1
Bu anahtar Explorer.exe çalıştırmak için çalışır, CMD.exe denerseniz bulunamadı.
prampe

41

.exeDosyanızın yolunu çevre değişken yoluna koymanız gerekir . "Bilgisayarım -> özellikler -> gelişmiş -> ortam değişkenleri -> Yol" a gidin ve .exedizinini yola ekleyerek yolu düzenleyin .

Kişisel olarak tercih ettiğim bir diğer çözüm ise daha düzgün bir değişken düzenleme için RapidEE kullanmak .


39

Windows 10, 8.1, 8

Başlat menüsünü aç,

  1. tip Edit environment variables
  2. Seçeneği aç Edit the system environment variables
  3. Tıklama Environment variables...düğmesi
  4. Orada iki kutu görüyorsunuz, System Variableskutuda pathdeğişken bulun
  5. Tıklayın Edit
  6. bir pencere açılır, tıklayın New
  7. Tip Rehber , aramalarınızdan yolunu .exeveya batchdosya ( Dizin araçlar yoldan dosya adını hariç)
  8. OkTüm açık pencerelere tıklayın ve sisteminizi yeniden başlatın, komut istemini yeniden başlatın .

4
Bana yardımcı olan tek cevap bu. "Sistemin yeniden başlatılması" nın gerekli olmadığını da ekleyeceğim. Sadece cmd'yi yeniden başlatmak yeterli olacaktır.
Joffrey Baratheon

WinKey + R ile ve SystemPropertiesAdvanced yazın
prampe

29

Yürütülebilir dosyayı yoldaki bir dizine koymak yerine, programı başlatan yoldaki bir dizinde bir toplu iş dosyası oluşturmalısınız. Bu şekilde, yürütülebilir dosyayı destek dosyalarından ayırmazsınız ve aynı dizine başka şeyler yoluna yanlışlıkla eklemezsiniz.

Böyle bir toplu iş dosyası şöyle görünebilir:

@echo off
start "" "C:\Program Files (x86)\Software\software.exe" %*

1
Böyle bir toplu iş dosyasına bir örnek eklemek ister misiniz - iyi olurdu?
petermeissner

Bunun en iyi seçenek olduğunu hissediyorum, yol değişkenine çok fazla şey eklemek istemedim. Böyle bir toplu iş dosyasının bu yanıt örneğini düzenleyeceğim.
Dino

1
Bununla ilgili sorun, yeni bir kabuk başlar. Aynı kabukta başlatmak için bir cygwin ikili dosyası almaya çalışıyorum, eğer doğrudan olarak referans verirsem bunu yaparC:\cygwin\bin\grep.exe
Johann

4
@Johann: start "" Yürütülebilir dosyanın yolunu çıkarın ve işe başlayın. Ayrıca, cygwin'de kullanım için bir cygwin kabuk betiği veya bir sembolik bağlantı isteyebilirsiniz. Veya bir kabuk takma adı.
Ben Voigt

Mükemmel, teşekkürler! Cygwin içindeki diğer seçeneklerinize katılıyorum, ancak bu durumda powershell'den bir cygwin ikili dosyası kullanmaya çalışıyorum.
Johann

5

Windows'da böyle basit bir görev için basit bir çözüm bulunmaması şaşırtıcı, pencerelerde takma adları tanımlamak için kullanabileceğiniz bu küçük cmd komut dosyasını oluşturdum (talimatlar dosya başlığındadır):

https://gist.github.com/benjamine/5992592

bu, küresel komutları kaydetmek için NPM veya yakut taşlar gibi araçlar tarafından kullanılan yaklaşımla hemen hemen aynıdır.


5

Diyelim ki exe'm C: \ Program Files \ AzCopy \ azcopy.exe

Komut / CMD / Toplu

SET "PATH=C:\Program Files\AzCopy;%PATH%"

Güç kalkanı

$env:path = $env:path + ";C:\Program Files\AzCopy"

Şimdi azcopyherhangi bir kabuk inc komut istemi, powershell, git bash vb herhangi bir konumdan yazabilir ve kullanabilirsiniz


3
  • Cmd.exe veya toplu iş dosyaları içinde çalıştırabilmek istiyorsanız, .exe dosyasının bulunduğu dizini% path% değişkenine ( Sistem veya Kullanıcı ) eklemeniz gerekir.
  • Çalıştır iletişim kutusunda (Win + R) veya ShellExecute'u çağıran herhangi bir uygulamada çalıştırmak istiyorsanız, exe'nizi uygulama yolları anahtarına eklemek yeterlidir (Yükleme / kaldırma sırasında daha az hataya eğilimlidir ve ayrıca dağınık değildir) yol değişkenine kadar)


2

Bunu c: \ windows dizinine yerleştirin veya ortam ayarlarındaki "path" dizinine ekleyin (windows-break - sekme gelişmiş)

Saygılarımla, // t


Özel yürütülebilir dosyaları yerleştirmek C:\Windowsyerine, PATHortam değişkenine özel bir dizin eklenmelidir .
Roland Illig

Değişir. Putty.exe / windows koydum.
Teson

1

Yüklemenizde 1 satırlık bir toplu iş dosyası kullanın:

SETX PATH "C:\Windows"

yarasa dosyasını çalıştır

Şimdi .exe'inizi c: \ windows klasörüne yerleştirin ve işiniz bitti.

komut satırına 'exename' yazabilirsiniz ve onu çalıştıracaktır.


2
Özel yürütülebilir dosyaları yerleştirmek C:\Windowsyerine, PATHortam değişkenine özel bir dizin eklenmelidir .
Roland Illig

1

Windows'ta basit Bash benzeri takma adlar

Her birini yola manuel olarak eklemeden otomatik olarak yola eklenmeyen uygulamalar için Windows'ta küresel bash benzeri takma adlar elde etmek için, sistemde en az değişiklik yapan ve en çok değişime sahip olan en temiz çözüm daha sonra özelleştirme için esneklik:

Takma Ad Yolunuzu "Yükleme"

mkdir c:\aliases
setx PATH "c:\aliases;%PATH%"

Takma Adınızı Ekleyin

Yeni Kabuk Penceresinde Aç

Başlamak için C:\path to\my program.exe, tüm bağımsız değişkenleri iletip yeni bir pencerede açın, c:\aliases\my program.bataşağıdaki içeriklerle dosya oluşturun ( başlangıç ​​komutuyla ilgili ayrıntılar için bkz. NT Start Command ):

@echo off
start "myprogram" /D "C:\path to\" /W "myprogram.exe" %*

Geçerli Kabuk Penceresinde Yürüt

Başlamak için C:\path to\my program.exe, tüm argümanları iletmek, ancak aynı pencerede çalıştırmak (bash'ın nasıl çalıştığı gibi) c:\aliases\my program.bataşağıdaki içeriklerle dosya oluşturun :

@echo off
pushd "C:\path to\"
"my program.exe" %*
popd

Geçerli Kabuk Penceresinde Yürüt 2

Çalıştırmak için geçerli çalışma dizinini değiştirmek için uygulamaya ihtiyacınız yoksa, takma ad klasörünüzdeki yürütülebilir dosyaya bir sembolik bağlantı ekleyebilirsiniz:

cd c:\aliases\
mklink "my program.exe" "c:\path to\my program.exe"

0

PATH'e ekleyin, aşağıdaki adımları (Windows 10):

  1. "Ortam ..." arama çubuğuna yazın ve Sistem Özellikleri penceresini açan Sistem ortamı değişkenlerini düzenle'yi seçin
  2. Ortam Değişkenleri ... düğmesini tıklayın
  3. Ortam Değişkenleri sekmesinde, Sistem değişkenleri bölümündeki Yol değişkenini çift tıklatın
  4. Boş satırı çift tıklatarak .exe yolunu içeren klasörün yolunu ekleyin ve yolu yapıştırın.
  5. Tamam'a tıklayın ve çıkın. Yeni bir cmd istemi açın ve herhangi bir klasörden komutu vurun ve çalışması gerekir.

0

Başka bir yol da .LNK$ PATHEX'inize ekleme yapmak olabilir . Sonra sadece yürütülebilir bir kısayol oluşturun (yani: yourshortcut.lnk) ve $ PATH içinde listelenen dizinlerden herhangi birine koyun.

UYARI NOT: $ PATH'nizde listelenen dizinlerde bulunan tüm .lnk dosyalarının artık "PATH'ed" olduğunu da bilin. Bu nedenle, bu yöntemin daha önce bahsedilen toplu iş dosyası yöntemini tercih ederim.


-1

Benden sonra kimse bunu arıyorsa, Yolunuzu eklemenin gerçekten kolay bir yolu var.

Yolu, resimde gösterildiği gibi bir dosyaya gönderin, kopyalayıp dosyadan yapıştırın ve önceki yolu noktalı virgülle belirli bir yolu yeni yola ekleyin. Windows 7'den önce uyarlanması gerekebilir, ancak en azından kolay bir başlangıç ​​noktasıdır.

PATH'yi metin dosyasına Vermek için Komut İstemi Görüntüsü


Bir cevabın temel kısmı harici bir ekran görüntüsünde değil, bir metinde olmalıdır.
Roland Illig

-3

Bunu yapmanın en iyi yolu .EXE dosyasını windows / system32 klasörüne kurmaktır. bu şekilde herhangi bir konumdan çalıştırabilirsiniz. Burası, .exe gibi ping'in bulunduğu yer ile aynıdır


Özel yürütülebilir dosyaları yerleştirmek C:\Windowsyerine, PATHortam değişkenine özel bir dizin eklenmelidir .
Roland Illig
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.