我用addpath(pwd)
讓我的.m文件在我的項目目錄中工作。當我關閉窗口並開始一個新窗口時,我剛剛添加的路徑消失了。但文件仍然運行。如何在Octave(在Windows上)獲得路徑?
是否在我的路上?我如何查看已添加到路徑中的目錄?
另外,.
是我從path
看到的第一個條目。這是否意味着我不需要添加任何目錄,因爲它總是會先搜索當前目錄?
謝謝。
我用addpath(pwd)
讓我的.m文件在我的項目目錄中工作。當我關閉窗口並開始一個新窗口時,我剛剛添加的路徑消失了。但文件仍然運行。如何在Octave(在Windows上)獲得路徑?
是否在我的路上?我如何查看已添加到路徑中的目錄?
另外,.
是我從path
看到的第一個條目。這是否意味着我不需要添加任何目錄,因爲它總是會先搜索當前目錄?
謝謝。
基本上,是的。
您可以使用addpath()
將搜索路徑添加到搜索路徑,但正如您所知,它只存在於當前會話中,並在重新啓動Octave時重置。如果您希望路徑在會話之間生存下來,請將其添加到octaverc
,該腳本文件在新會話開始時運行。例如路徑octaverc
文件是:
C:\Octave\3.2.4_gcc-4.4.0\share\octave\site\m\startup
由於.
是在默認情況下你的路徑,八音會搜索當前目錄的,它需要的任何功能文件。如果你只是呆在同一個目錄下,使用addpath(pwd)
就沒什麼用處了。但是,在某些情況下,如果您有一個包含您的函數的目錄,而另一個包含您正在處理的數據,那麼它會很有用:您可以從函數目錄開始,執行addpath(pwd)
,然後將cd
添加到數據目錄,同時仍然可以使用您的功能。
您可以創建批處理文件,該文件將以您的目錄路徑啓動Octave。請參閱下面的例子:
octave-3.6.4.exe -p "C:\MyOctaveDiretory"
-p means addpath()
addpath(pwd); savepath();
完成。
我覺得Octave有一個bug(我在Windows上使用4.0.3版本)。當我在當前路徑中創建一個新文件時,不能由Octave調用(「error:'foo'undefined near line 1 column 1」)。如果我重新啓動八度,它的作品。這個addpath(pwd)技巧幫助我很多(在我沒有成功嘗試rehash()和cd在其他地方並且再次返回之前)。
如果你有同樣的問題,對於症狀的原因可能是:
我希望你注意到你只回答了什麼是他要求的一部分...你能與其餘的幫助呢? – yakobom