什么是终端命令行,它可以告诉我系统已将 TMPDIR 分配到哪里?

什么是终端命令行,它可以告诉我系统已将 TMPDIR 分配到哪里?

我想在 Ubuntu 15.10 终端中输入一个命令,它会告诉我哪个文件夹被用作“临时”文件夹。有吗?谢谢任何评论。

答案1

我能想到的最接近“系统分配了 TMPDIR 的位置”的是程序调用命令时使用的目录mktemp

正如手册页中解释的那样mktemp,这是由环境变量决定的,如果变量未设置,则$TMPDIR返回/tmp

-p DIR, --tmpdir[=DIR]
       interpret TEMPLATE relative to DIR; if DIR is not specified, use
       $TMPDIR  if set, else /tmp.  With this option, TEMPLATE must not
       be an absolute  name;  unlike  with  -t,  TEMPLATE  may  contain
       slashes, but mktemp creates only the final component

您可以使用 - 检查$TMPDIR您的系统上是否设置了echo $TMPDIR- 或者更直接地,您可以mktemp使用-u或运行命令--dry-run来查看它将使用哪个目录

-u, --dry-run
       do not create anything; merely print a name (unsafe)

例如

$ mktemp -u
/tmp/tmp.sP1jgc38gg

这证实了在这种情况下它正在使用/tmp

答案2

在我看来,临时文件夹有两种含义。您可以将其/tmp作为磁盘上的文件夹供 Ubuntu 使用,也可以将其作为交换空间。

交换空间是磁盘上的一个分区,充当额外的 RAM。

/tmp文件夹用于程序临时存储数据直到下次重新启动。

相关内容