Назад | Перейти на главную страницу

временная папка в Macos под корнем?

Я пишу сценарий MacOS, который должен запускаться с правами администратора (под «sudo»). Скрипту нужна временная папка для хранения временных файлов. К сожалению, под root нет "TMPDIR"! Если я запускаю env, я вижу TMPDIR с хорошим временным путем. Если я запускаю 'sudo env', я не вижу TMPDIR :(. Есть ли способ получить правильный путь к «временной папке» в корневом каталоге?

В общем, вы должны создавать временные файлы, используя функции, предоставляемые библиотекой, и использовать предоставленные имена файлов и / или указатели. На Mac команда mktemp (1) с параметром «-d» должна делать то, что вы хотите.

ИМЯ mktemp - сделать временное имя файла (уникальным)

ОБЗОР mktemp [-dqtu] [-p каталог] [шаблон]

ОПИСАНИЕ Утилита mktemp берет заданный шаблон имени файла и перезаписывает его часть, чтобы создать уникальное имя файла. Шаблон может быть любым именем файла с добавленным к нему числом «X», например /tmp/tfile.XXXXXXXXXX. Если шаблон не указан, по умолчанию используется tmp.XXXXXXXXXX и подразумевается флаг -t (см. Ниже).

Если есть $ TMPDIR, используйте его. В противном случае используйте / tmp (он должен существовать и на Mac).