我在Mac上使用Lua的交互模式(感謝rudix.org)。從終端調用文件時減少文件路徑
當我想要加載一個文件我做的:
dofile("/my/long/path/to/my/directory/file.lua")
我想要做不同的事情,那就是:
- 把我所有的文件在桌面目錄
myDirectory
; - 然後通過這種方式從終端調用文件
dofile("file.lua")
;
這可能嗎?怎麼樣?
我在Mac上使用Lua的交互模式(感謝rudix.org)。從終端調用文件時減少文件路徑
當我想要加載一個文件我做的:
dofile("/my/long/path/to/my/directory/file.lua")
我想要做不同的事情,那就是:
myDirectory
;dofile("file.lua")
;這可能嗎?怎麼樣?
如果路徑是固定的,你可以重新定義dofile
:
local _dofile=dofile
local path=("/my/long/path/to/my/directory/")
function dofile(x)
return _dofile(path..x)
end
你可以把這個(和其他初始化)在文件中設置環境變量LUA_INIT
它的位置。在此之後,每次調用lua
將會看到上面重新定義的dofile
版本,用戶將可以簡單地說dofile("foo.lua")
。
或者,您可以使用require
,它在package.path
或LUA_PATH
的路徑列表中尋找模塊。
這很有趣,但問題與教室有關:我不能讓孩子在教學時複製長路徑。我正在尋找類似環境變量的東西 –
而事實上,我目前的替代者是: - ) –
將什麼文件放在桌面目錄中? –
帶.lua擴展名的文件 –