我能在lua中改变os.tmpname()吗?

我想更改临时文件的名称。我知道 os.tmpname() 返回一个临时名称,我想知道是否有方法可以将其更改为我想要的名称。

点赞
用户107090
用户107090

如果你能够打补丁给 Lua,那么只需要在 loslib.c 中的 lua_tmpnam 函数中编辑模式为 "/tmp/lua_XXXXXX" 的模板。这在任何 POSIX 系统上都能工作,因为它依赖于 mkstemp 函数。你仍然会受到限制,只能使用以六个 'X' 结尾的类似于文件名的模板。

2014-04-29 16:18:11
用户204011
用户204011

如果可以使用库,建议使用luaposix代替。mkstempmkdtemp接受一个模式作为它们的参数。

2014-04-29 20:23:05