Dizini eklemeden bir .exe'yi varsayılan yola ekleme


22

Örneğin, PATH'ime notepad ++ eklemek istiyorum, ancak dizin ayrıca uninstall.exeve birkaç başka dosya / çalıştırılabilir dosya içeriyor ve yolumu "kirletmelerini" istemiyorum. Sadece bir tane ekleyebilir miyim notepad++.exe?

Yanıtlar:


17

Toplu yol komut dosyasını, yolunuzdaki dizine, buna benzer bir şey ekleyebilirsiniz:

@echo off

:: Notepad++ execution

if [%1]==[-h] goto :HELP
if [%1]==[--help] goto :HELP
if [%1]==[/?] goto :HELP
goto :START

:START
start "" /i "%ProgramFiles(x86)%\notepad++\notepad++.exe" %*
goto :EOF

:HELP
echo -------------------------------
echo Notepad++ Command Argument Help
echo -------------------------------
echo Usage :
echo.
echo notepad++ [--help] [-multiInst] [-noPlugins] [-lLanguage] [-nLineNumber] [-cColumnNumber] [-xPos] [-yPos] [-nosession] [-notabbar] [-ro] [-systemtray] [-loadingTime] [fullFilePathName]
echo.
echo     --help : This help message
echo     -multiInst : Launch another Notepad++ instance
echo     -noPlugins : Launch Notepad++ without loading any plugin
echo     -l : Launch Notepad++ by applying indicated language to the file to open
echo     -n : Launch Notepad++ by scrolling indicated line on the file to open
echo     -c : Launch Notepad++ on scrolling indicated column on the file to open
echo     -x : Launch Notepad++ by indicating its left side position on the screen
echo     -y : Launch Notepad++ by indicating its top position on the screen
echo     -nosession : Launch Notepad++ without any session
echo     -notabbar : Launch Notepad++ without tabbar
echo     -ro : Launch Notepad++ and make the file to open read only
echo     -systemtray : Launch Notepad++ directly in system tray
echo     -loadingTime : Display Notepad++ loading time
echo     -alwaysOnTop : Make Notepad++ always on top
echo     fullFilePathName : file name to open (absolute or relative path name)
echo.
goto :EOF

:EOF

Adını yazabilirsin notepad++.cmd. Yardım bölümü, anahtarlar hakkında kolayca bilgi almanızı sağlar.

Tüm bu komut dosyalarını ve komut satırı programlarını şuna eklenmiş bir dizine koydum %PATH%: C:\Users\Public\Command\ ... ve bu dizin tüm bilgisayarlara ve sanal makinelere eşitlendi.


8

Aşağıdaki gibi içeriğe sahip bir toplu iş dosyası oluşturun:

@"C:\Program Files\Git\bin\git.exe" %*

Bu .bat, git.batiçinde bulunan bir dizindeki gibi bir dosya olarak kaydedilmelidir PATH.

@komutu istila kabuğuna yankılanmasını engeller. Alıntılar, ""boşlukların argüman sınırlayıcıları olarak yorumlanmasını önler. %*argümanları toplu iş dosyasına, bunun yerine alıntı yapılan yürütülebilir dosyaya yapıştırır.

Şimdi daha önce toplu iş dosyası adının bir bölümünü kullanarak yürütülebilir dosyayı çalıştırabilirsiniz .bat. Benim durumumda git,.

Referanslar:


Kapatıncaya kadar CMD'yi kapatan birçok program için. Cevabımda startgösterildiği gibi bunu önlemek için kullanmanız gerekir .
paradroid

@paradroid: Teşekkürler, ancak istenmedikçe ebeveyne bağlı kalmak standart terminal davranışıdır. Kullanıcı, start gitonlar için yapmaktan çok yapmalı. Toplu komut dosyası exec, istenen işleme dahil edilirse daha iyi davranır , ancak bu Windows'ta mümkün değildir: serverfault.com/questions/315077/… . Hazırlanabilirdim callama bilgiçlik taslayan ve çoğunlukla anlamsız olurdu.
Matt Joiner,

3

Bir kısayol için sürükleyin notepad++.exeiçin C:\Windows\System32.


Alternatif olarak, @Synetech inc. Tarafından önerildiği gibi, kısayollarınızı ayrı bir dizine (örn. C:\Shortcuts) Yerleştirebilir ve ardından bu dizini şuraya ekleyebilirsiniz %PATH%:

setx PATH "%PATH%;C:\Shortcuts"

Yorumların bazılarının gösterdiği gibi, bu yalnızca Çalıştır iletişim kutusundan çalışır. Kısayolların komut isteminden başlatılmasını sağlamak için, PATHEXT ortam değişkeninize kısayol uzantısını (.LNK) eklemeniz gerekir.

setx PATHEXT %pathext%;.LNK

Referanslar:

Çalıştır iletişim kutusuyla uygulamaları nasıl kolayca başlatabilirim?


1
Bu, tercih edilen çözümdür (bir toplu iş dosyasının aksine); yoldaki (farklı) bir dizinde kısayol oluşturun; Windows'un dizinlerini kirletmeyin! Bu amaç için özel olarak adlandırılan bir klasör var Shortcuts.
Synetech

1
Bunun için yanlış bir sözdizimi setx. Eğer bir eşittir işareti kullanmazsınız ve IIRC'de eğer akımın %PATH%içinde boşluklar varsa bütün yolu tırnak işaretleri içine almanız gerekir .
paradroid

Ve SETXbunları genişletmekten kaçınmak için değişkenler için yüzdeleri yerine tildleri kullanmaz mı? Bazı env-var ayar araçlarının yaptığını biliyorum…
Synetech

2
Bu işe yaramıyor. Varsayılan olarak (git.exe sürüklerim), "git - Kısayol", bunu "git.exe", "git", "git.cmd" vb. Kısayolu kabul etmeyecek.
Matt Joiner,

3
Bu sadece Run Asiletişim kutusundan çağrılırken çalışır , komut isteminden çalışmadı.
Matt Joiner

1

Sadece Yoldaki bir klasörü kullanarak sembolik bir bağlantı oluşturun mklink.

örneğin (Yönetici komut isteminde)

mklink "C:\Users\Me\Documents\Paths\np.exe" "C:\Program Files (x86)\Notepad++\notepad++.exe"

0

App Paths kayıt defteri anahtarı tam olarak bunu yapar: yolu notepad ++. Exe "\ program files \ ..." olarak ayarlayın ve Başlat-Çalıştır, cmd, ... 'dan başlatılabilir % PATH% içindeki bir dizini.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths

Referans: /programming/4822400/register-an-exe-so-you-can-run-it-from-any-command-line-in-windows


Bu işlem onu ​​cmd'den çalıştırılabilir yapmaz - yalnızca çalıştırmadan veya cmd'de "start myapp.exe" de olduğu gibi "start" ile öneklendirmeniz gerekir
Tahir Hassan

Bu Komut İstemi, kabul edilen, bu değişkeni tanıma yeteneğinden yoksundur. PowerShell tanır. Bu çözüm, daha önemlisi, sadece rehber için ve dolayısıyla konu dışı için geçerlidir.
Todd Partridge

0

Burada sunulan çözümlerin hiçbirini beğenmedim, bu yüzden başka bir şey denedim.

  1. Bağlantı kabuğu uzantısını yükle (daha fazla bilgi burada )

  2. Marteen’in önerdiği gibi tüm kısayollarınızı saklamak için bir klasör oluşturun ve bunları ekleyin %PATH%. PATH'e eklemek için Rapid Environment Editor'ı oluşturdum C:\Shortcutsve kullandım .

  3. Yolunuza eklemek istediğiniz dosyayı sağ tıklayın (Explorer'da) ve "Bağlantı Kaynağını Seç" i tıklayın.

  4. Yeni oluşturduğunuz klasörü sağ tıklayın ve tıklayın Drop As > Symbolink Link.

  5. İsterseniz symbolink bağlantısını yeniden adlandırın.

Bu kadar. Programınıza şimdi komut satırı üzerinden erişebilmelisiniz. Yeni klasörü PATH'inize yeni eklediyseniz, cmd.exe veya Cmder veya ConEmu ya da ne kullanıyorsanız onu yeniden başlatmanız gerekir. Bundan sonra, yeniden başlatmadan yeni programlar ekleyebilirsiniz.

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.