在LUA中获取各种路径.

1、获取当前路径。

可以使用C语言大法。也可以使用 os库调用 cd命令。

static int fmt_fs_cwd(lua_State * L)
{
	char path[1024];
	if(NULL == getcwd(path, 1023))
		lua_pushinteger(L, errno);
	else
		lua_pushstring(L, path);
	return 1;
}


获取当前执行脚本的文件名以及所在路径,这个需要借助 debug库了。

function dirname(str)
	if str:match(".-/.-") then
		local name = string.gsub(str, "(.*/)(.+)", "%1")
		return name
	elseif str:match(".-\\.-") then
		local name = string.gsub(str, "(.*\\)(.+)", "%1")
		return name
	else
		return ''
	end
end

--- 当前文件名
local __FILE__ = debug.getinfo(1,'S').source:sub(2)



你可能感兴趣的:(在LUA中获取各种路径.)