2014-09-24 21 views
2

所以我在與終端玩弄。通過在我的路徑中加入二進制文件,通過MAC命令行安裝程序

有人可以向我解釋如何安裝一個程序,把它的二進制文件放在我的PATH中。

我假設我去$ PATH/--Binary--

如果以上的情況下,

1)爲什麼這個安裝程序?

2)是否有標準化的方法來查找「下載」二進制文件?

我確定有更好的安裝程序的方法。不過,我對這種特定的方法感興趣。

在此先感謝您的幫助。

回答

5

PATH是一個shell變量,它告訴shell可以找到程序的位置。它是查找可執行程序和腳本的地方的列表,以冒號分隔(:)。例如:

PATH=/bin:/sbin:/usr/local/bin 

所以,當你通過鍵入運行程序:

program 

的外殼看起來首先在/bin,然後在/sbin等等,直到它找到program,那麼它運行。

所以,如果你想安裝一個二進制文件(或程序,或腳本),只要把它放在PATH的任何地方。或者把它放在新的位置,而不是放在你的PATH上,然後改變你的PATH來告訴炮彈放在哪裏。

一般而言,您可能希望在您的登錄配置文件中設置PATH,該配置文件可能是〜/ .profile或其他地方,以便在您每次登錄時設置它。爲此,請添加如下行:

export PATH=$PATH:/some/additional/place 

如果你想找出哪些是當你鍵入

program 

將要運行的實際程序就可以運行

which program 

例如,如果你想知道哪些sed您正在運行,類型

which sed 

,它可能會告訴你somethimg喜歡

/usr/bin/sed 

關於你提到的第二個問題,關於standard downloads area,我不知道你的意思是尋找二進制文件的標準位置,或者是安裝它們的標準位置。沒有standard downloads區域來獲取二進制文件,但對於Mac OSX,許多人使用homebrewmacports。如果你的意思是把它們放在一個標準的地方,那麼將不是來自操作系統作者的軟件安裝到/usr/local/bin是正常的,這樣所有的本地二進制文件都與操作系統本身的二進制文件分開。

+0

是否'在/ usr /本地/ bin'目錄還適用於具有待建的軟件下載?如果是這樣,我們應該存儲整個untarred根目錄還是僅存儲構建的結果二進制文件?如果下載已經具有'bin'目錄,我們應該只將'bin'目錄存儲在/ usr/local/bin或整個下載的解壓目錄中? – 2016-02-08 05:04:18

+1

一般而言,您不會在'/ usr/local/bin'中存儲您下載的所有軟件分發。通常情況下,你可以將它構建到其他地方,或者將生成的二進制文件複製到'/ usr/local/bin'中(可能使用'install'工具),或者將包含二進制文件的目錄添加到PATH中。 – 2016-02-08 08:45:37

+0

謝謝!我只是覺得很奇怪,因爲我正在解壓'/ Users/username/Development/Tools'中的所有內容,我不確定這是否是最佳做法。 – 2016-02-08 15:30:33

相關問題