Замечания по использованию каталога `/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}
Другие вопросы по тегам