PATH ortam değişkenine yeni bir yürütülebilir dosya mı ekliyorsunuz?


16

Phantomjs adlı bu kütüphaneyi yüklemeye çalışıyorum.

Talimatlar bu satırı içerir:

http://code.google.com/p/phantomjs/wiki/BuildInstructions

Kolaylık sağlamak için, yürütülebilir bin / phantomjs.app / Contents / MacOS / phantomjs dosyasını PATH'nizdeki bir dizine kopyalayın.

Bunu nasıl yaparım?


Çöp kutusu zaten içinde olduğu için bunu yolunuza koymak konusunda endişelenmeniz gerekeceğini sanmıyorum. Ama isterse bunu buradan ulaşmak için nasıl bulabilirsiniz: troubleshooters.com/linux/prepostpath.htm

@cksum ama bu göreceli bir yoldur; "bin" ten önce ne olduğunu bilmiyoruz.
bneely

@bneely Evet, ancak ~ / bin yok. Tek konumlar / bin, / usr / bin ve / usr / local / bin'dir. Bunların hepsi zaten yolunuzda. Çalıştırırsanız path, varsayılan olarak aşağıdakileri görürsünüz: PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/binSöz konusu programın yükleme komut dosyasına bakmadım, ancak bir yere kendi 'bin' klasörüne yüklemek son derece olası değildir. Ve göreli yollar AFAIK ekleyemezsiniz. Özensiz bir rehberden sadece bir yazım hatası düşünmeye meyilliyim.

Göreli yollar eklenemeyeceğini biliyorum; Sorudaki yolun göreceli bir yol olduğunu belirtiyorum çünkü / / veya ~ ile başlamıyor.
bneely

Yanıtlar:


10

PATH ne olduğunu bulmak için, bir Terminal penceresi açın ve şu komutu çalıştırın: echo $PATH. Çıktı, içeriği tam yolu belirtmeden çalıştırabileceğiniz iki nokta üst üste işaretli dizinlerin listesidir.

/ Usr / bin yolumda olduğundan, wkomutu wtam yerine yazarak çalıştırabilirim /usr/bin/w.

Ayrıca, yürütülebilir dosyayı listelenen PATH dizinlerinden birine taşımanız gerekmez. Diğer seçenekler arasında

  • Yürütülebilir dosyayı olduğu yerde bırakın ve PATH dizinlerinden birinden symlink yapın
  • Kabuğunuz için bir oturum açma komut dosyasına açıkça ayarlayarak PATH'inize bir dizin ekleyin

Öte yanıtında Gerry tavsiyesine @ izleyin ve lütfen sembolik köprüyü bunu. Bu en temiz yoldur!
cregox

Herhangi bir şans eseri, içinde tam bir dizine ihtiyacınız varsa, PATHiçinde erişmeniz gereken birçok yürütülebilir dosya varsa, başka bir seçenek yoktur ve bunun nedeni budur PATH. Şu anda yola eklemek için ~ / .bash_profile kullanıyoruz .
cregox

20

Bunu başarmanın en temiz yolu, / usr / local / bin dizinindeki (varsayılan olarak PATH'e dahil olan) ikiliyi işaretlemektir. Henüz mevcut değilse bu dizini oluşturmanız gerekebilir. Terminal.app dosyasını açıp şunu yazarak bu dizinlerin PATH'nizde olup olmadığını kontrol edebilirsiniz:

echo $PATH

Bu, PATH'nizdeki tüm dizinlerin iki nokta ile ayrılmış bir listesini oluşturur.

/ Usr / local veya / usr / local / bin dizinleri henüz mevcut değilse, aşağıdakileri yürütün:

sudo mkdir -p /usr/local/bin

İkili Symlink, değiştirin (/ Applications) farklıysa phantomjs.app yolu ile değiştirin:

sudo ln -s /Applications/phantomjs.app/Contents/MacOS/phantomjs /usr/local/bin

Şimdi phantomjs komut satırından yürütürken sorun yaşamamalısınız.


+1,ls /usr/local/bin/ || sudo mkdir /usr/local/bin/ ; sudo ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
Jose Carlos Ramos Carmenates

3

Sorunun köküne geri dönersek, phantomjs yüklüyorsanız, daha kolay hale getirmek için npm'yi kullanabilirsiniz.

Bunu yaparsanız, sadece şunları yapabilirsiniz:

npm install -g phantomjs-prebuilt

ki bu, binary'yi uygun bin dizininin içine kuracaktır. (-g bayrağı npm'ye, paketin global olarak yükleneceğini belirtir)


0

Başka bir dizinden dosya symlinking çalışırken, ben aslında usr/local/bin"iki kez" için , dosyayı kopyalamak / taşımak için tercih .

cp bin/phantomjs.app/Contents/MacOS/phantomjs /usr/local/bin
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.