2013-01-04 39 views
0

.bashrc中說:MySQL的:命令未找到,但它是在我的道路

PATH=$PATH:/usr/local/mysql/bin/:$HOME/.rvm/bin # Add RVM to PATH for scripting 

mysql -u root回報

-bash: mysql: command not found 

,但如果我這樣做/usr/local/mysql/bin/mysql -u root 一切工作正常。爲什麼不使用PATH進行搜索?

感謝

+0

如果你在shell中執行'echo $ PATH',你會看到改變後的'PATH'嗎?如果沒有,我可能會知道爲什麼。 – cdhowie

+0

你是否'.bashrc''導出PATH'? – fge

+0

@fge這就是我認爲正在發生的事情,我有一個答案,我將發佈。 – cdhowie

回答

1

您需要可以使用:

export PATH=$PATH:... 

還是這個語句後添加的export PATH聲明。

您所做的更改不會超越您的.bashrc的執行。在稍後分配(或export PATH)之前添加export將確保您的更改導出到您的shell的子進程。

+0

謝謝。還必須執行source〜/ .bashrc以在保存後重新加載文件。 – 0xSina

+1

未引用的變量確實會超出'.bashrc'的執行範圍,並且shell自身使用$ PATH,因此不需要將其導出爲可用。但沒有提到,它不會像你提到的那樣出現在su或屏幕或其他子進程中。 –

相關問題