Установить каталог tmpfile () на Linux
-
21-09-2019 - |
Вопрос
Программа, которую я использую, сбой, когда использует tmpfile () для больших файлов. Похоже, что проблема заключается в том, что у меня нет разрешения на создание больших файлов в /TMP, которые эта функция использует по умолчанию. Так есть ли способ, возможно, с переменной окружающей среды, что я могу сделать TMPFile () писать в другое место?
РЕДАКТИРОВАТЬ: рассматриваемая программа Сокс, который использует C.
Решение
Вы можете использовать переменную среды TMPDIR, чтобы сообщить tmpfile (), где создавать файлы:
SH Синтаксис:
TMPDIR=/path/to/whatever; export TMPDIR
Синтаксис CSH:
setenv TMPDIR /path/to/whatever
Другие советы
Учитывая информацию в man tmpfile (3)
Вы можете: #define P_tmpdir "/somedir"
Конечно, это, вероятно, не слишком надежно.
Вы также можете установить свою переменную экологическую переменную, TMPDIR
в какое -то место.