2017-09-15 54 views
0

考慮以下幾點:獲得途徑jupyter服務器根目錄

$ cd /home/mydir 
$ jupyter notebook --port=8888 

用簡單的英語,我從/home/mydir目錄中運行jupyter服務器。

是否有一種簡單的方法從筆記本內獲取此目錄,無論它是R筆記本還是Python筆記本或其他?也許有一些神奇的命令或變量?

注意:getwd()不是回答,因爲它返回當前筆記本的目錄,但不是jupyter服務器根目錄。

回答

0

請記住,您的iPtyhon只是一個Python模塊,因此您可以在單元中執行任何有效的Python代碼。所以,如果你開始你的筆記本電腦,並沒有執行的代碼中的任何目錄的變化,你應該能夠在小區下面的檢索您的cwd

import os 
os.getcwd() 

但此外,還可以在執行shell命令細胞,因此您可以檢索單元格中的其他信息。例如:

!which jupyter 

應該爲您提供jupyter可執行文件的路徑。

然後導致你運行像:

!jupyter --paths 

這應該給你類似的東西:

config: 
    /Users/yourdir/.jupyter 
    /usr/local/etc/jupyter 
    /etc/jupyter 
data: 
    /Users/yourdir/Library/Jupyter 
    /usr/local/share/jupyter 
    /usr/share/jupyter 
runtime: 
    /Users/yourdir/Library/Jupyter/runtime 
+0

我有一個嵌套的目錄結構。 Jupyter從'/ home/mydir'目錄運行,而筆記本在'/ home/mydir/subdir/another /'文件夾中。 'os.getcwd()'返回當前筆記本目錄,而我需要一個項目根目錄。 –

+0

如果您從命令行傳遞jupyter可執行文件的路徑,那麼您對'/ home/mydir'發出的python進程沒有任何提示。您可以在文件系統的任何位置啓動筆記本,方法是在通話過程中將筆記本路徑設置爲筆記本。這就是Python所保留的內容,即第二條路徑,而不是'/ home/mydir',如果這僅僅是您輸入筆記本電話時的位置。 –