Julia包含number of methods用于制作临时文件和目录。
我正在大量使用它们(和/dev/shm
),用真正想要使用实际文件的库(JLD / HDF5和OpenStack Swift)进行推断。
我一直认为当他们指向那里的指针的终结者被调用时,他们会被删除。 但是在退出朱莉娅之后,似乎他们都还在那里。
linux会删除它们吗?
答案 0 :(得分:5)
如果应用程序自身没有清理,操作系统最终会删除文件。它取决于删除临时文件时的系统设置。例如,它可以在启动或夜间(通过cron作业)或其他方式发生。
请参阅此答案,例如:How is the /tmp directory cleaned up?
答案 1 :(得分:3)
你可能在寻找什么,
令人惊讶的是,他们没有被删除,基于超出范围,作为mktemp
的阻止版本。
在documentation you linked。
mktemp (f :: Function [,parent = tempdir()])
将函数f应用于mktemp(parent)的结果,并在完成后删除临时文件。
mktempdir (f :: Function [,parent = tempdir()])
将函数f应用于mktempdir(parent)的结果,并在完成时删除临时目录。
您可以使用:
mktempdir("/dev/shm") do tdir
fname = joinpath(tdir, name)
#Do some things with your new temp filename `fname` in your tempdir `tdir`
end
#the directory referenced by `tdir`, and `fname`, have now been deleted.