在多用户系统上使用 `/tmp` 目录的注意事项

在多用户系统上使用 `/tmp` 目录的注意事项

随着我对 Ubuntu 和 bash 编程的了解越来越多,我开始将变量存储在 中/tmp。例如,在调用同一个 bash 脚本时,我想记录之前的状态。

在我当前的单用户系统上,目录不存在冲突的危险/tmp。但是我希望我的代码能够适应未来,并且想知道我是否应该养成使用名为 的目录的习惯~/tmp

也许它应该是~/.tmp隐藏的。也许它应该~/temp这样,以免与常规/tmp目录混淆。

任何想法/建议都值得赞赏。谢谢。

答案1

通常,如果您希望存储每个用户的状态,最简单的方法就是在用户主目录中为应用程序创建一个专用目录:

CFGDIR="${HOME}/.mycoolapp"
mkdir -p ${CFGDIR}
# read / write files in ${CFGDIR} here..

如果您只想临时存储脚本的一个实例,则一个好方法是使用 mktemp。例如:

TMPDIR="$(mktemp -d)"
# read / write files in ${TMPDIR} here..
rm -rf ${TMPDIR}

相关内容