【发布时间】:2012-05-04 19:41:23
【问题描述】:
OS X 是否为每个用户提供单独的临时文件夹?
如果是这样,如何以编程方式检索当前用户的临时文件夹路径?
PS 查看我自己的 OS X 文件系统,我看不到这样的文件夹。
【问题讨论】:
OS X 是否为每个用户提供单独的临时文件夹?
如果是这样,如何以编程方式检索当前用户的临时文件夹路径?
PS 查看我自己的 OS X 文件系统,我看不到这样的文件夹。
【问题讨论】:
假设您使用的是 Objective-C 和 Foundation:NSTemporaryDirectory() 应该返回一个带有用户临时目录的 NSString。在我的机器上,该目录位于/var/folders/ 下。
例如:
NSString *tempDirectory = NSTemporaryDirectory();
文档说NSTemporaryDirectory()返回“当前用户的临时目录的路径。如果当前没有这样的目录可用,则返回nil。”
【讨论】:
OS X 没有(或在早期的 Lion 版本中没有;10.7.3 似乎这样做)设置 TMPDIR 供类 Unix 脚本或程序使用,但许多 GUI 程序使用每个用户/var/folders 下的临时目录,您可以使用一些 AppleScript(脚本添加中的temporary items folder)或通过NSTemporaryDirectory() 检索,如其他地方所述。
【讨论】:
TMPDIR 肯定是在我的系统上设置的。它与NSTemporaryDirectory() 返回的目录相同。
TMPDIR 设置在我刚刚检查过的 Snow Leopard (10.6.8) 机器上。
TMPDIR 是否可能只设置在交互式 shell 中。
launchctl export。它也存在于 GUI 应用程序的环境中,而不仅仅是 shell。