0

我使用的程序在将tmpfile()用于大文件时失败。问题似乎是我无权在 /tmp 中创建大文件,该函数默认使用该文件。那么有没有一种方法,也许有一个环境变量,我可以让 tmpfile() 写入不同的位置?

编辑:有问题的程序是sox,它使用 C。

4

2 回答 2

4

您可以使用环境变量 TMPDIR 来告诉 tmpfile() 在哪里创建文件:

sh 语法:

TMPDIR=/path/to/whatever; export TMPDIR

csh 语法:

setenv TMPDIR /path/to/whatever
于 2009-12-27T03:56:32.850 回答
1

鉴于man tmpfile (3)您可能想要的信息:#define P_tmpdir "/somedir" 当然,这可能不太可靠。

您还可以将环境变量设置TMPDIR为某个位置。

于 2009-12-27T03:58:42.287 回答