Страница 1 из 1
Временные файлы
Добавлено:
24.10.2013 09:35:13
Vufer
Камрады, есть вопрос.
Пишу программулю, которая будет вызывать внешний скрипт, который работает с файлами. Есть промежуточный результат, для оценки выполнения с заданными параметрами. Его неплохо было бы сохранять в папке с временными фалами. Вопрос: как получить от системы путь, дабы потом его скормить скрипту? Кросплатформенность не особо беспокоит, интересует в первую очередь linux.
Re: Временные файлы
Добавлено:
24.10.2013 09:51:10
qivi
А вроде путь стандартный "/tmp", или бывают варианты?
Re: Временные файлы
Добавлено:
24.10.2013 09:53:44
Vufer
qiviА вот кто его знает... Вдруг варианты? Насколько корректно будет просто гадить в /tmp?
Re: Временные файлы
Добавлено:
24.10.2013 10:24:16
zub
GetEnvironmentVariable('TEMP')
??
Re: Временные файлы
Добавлено:
24.10.2013 11:40:53
Vufer
zub GetEnvironmentVariable('TEMP') возвращает пустоту.
Добавлено спустя 15 минут 9 секунд:Всем спасибо, вопрос снят
Вики говорит, что In Unix and Linux, the global temporary directories are /tmp and /var/tmp.
qivi, вы были абсолютно правы
Re: Временные файлы
Добавлено:
24.10.2013 12:15:11
zub
тогда есть еще
GetEnvironmentVariable('TMP')
и тамже
gettempdir
а вот хардкодить такие вещи - не гут
Re: Временные файлы
Добавлено:
24.10.2013 12:54:16
Vufer
zub, GetEnvironmentVariable('TMP') так же вернул пустоту, полагаю актуально для окошек.
А вот gettempdir как раз то, что нужно, и даже лучше, т.к. может дать пользовательские темпы
Хардкодить такие штуки тоже не считаю правильным, потому и задал вопрос.
Премного благодарен.
Re: Временные файлы
Добавлено:
20.11.2013 07:43:25
xdsl
Присоединяюсь, gettempdir - лучший вариант, если не забывать его чистить. А то бывает ситуации - формируешь набор данных, ловишь необрабатываемое исключение и все - программа завершилась, временный файл - не удален. Пока отлаживаешь - нагенерируешь их столько, что жесткий диск закончится.
Есть конечно tmpfs, которую часто на /tmp монтируют. В оперативной памяти, работает быстро и самоочищается при загрузке ОС. Однако для временного хранения больших файлов - не приспособлена. Например у меня:
$df | grep /tmp
tmpfs 2,0G 196K 2,0G 1% /tmp
Итого - два гига, много не наработаешь.