TGViewer
Linux Ready | DevOps Linux Ready | DevOps @linux_ready · 11.2K subscribers
Post #1218 1.95K
Работа с временными каталогами через mktemp!

При написании скриптов важно безопасно создавать временные файлы и каталоги. Для этого используется утилита mktemp, которая создаёт уникальные имена и исключает гонки (race conditions).

Создание временного файла:
mktemp


Команда создаёт файл в /tmp и выводит его путь.

Создание временного каталога:
mktemp -d


Флаг -d создаёт каталог вместо файла.

Создание файла с собственным шаблоном имени:
mktemp /tmp/script.XXXXXX


XXXXXX заменяются случайной последовательностью символов.

Использование временного файла в shell-скрипте:
tmpfile=$(mktemp)
echo "data" > "$tmpfile"


Путь сохраняется в переменную, после чего файл можно использовать внутри скрипта.

Создание временного каталога для обработки данных:
tmpdir=$(mktemp -d)
cp *.log "$tmpdir"


Часто используется при обработке архивов или промежуточных файлов.

Автоматическая очистка временного файла через trap:
tmpfile=$(mktemp)
trap 'rm -f "$tmpfile"' EXIT


trap гарантирует удаление временного файла при завершении скрипта.

Создание файла в конкретном каталоге:
mktemp -p /var/tmp backup.XXXXXX


Полезно, если требуется другой каталог вместо /tmp.

🔥 Использование mktemp считается стандартной практикой для shell-скриптов — ручное создание файлов в /tmp через фиксированные имена может привести к конфликтам и проблемам безопасности.

🚪 Linux Ready | #практика
  • 🤝 14
  • 🔥 11
  • 👍 8
  • ❤ 1
More from @linux_ready
  1. Oct 6, 2026В GNU/Linux есть отдельная утилита для преобразования чисел внутри текстовых потоков! Допу…
  2. Oct 6, 2026Удобный бот для мониторинга доступности сайтов и серверов Никаких сторонних сайтов и прило…
  3. Oct 6, 2026Большой файл можно клонировать почти мгновенно без полного копирования его данных! На файл…
  4. Oct 5, 2026Для отладки изолированного процесса необязательно заходить внутрь контейнера или менять ег…
  5. Oct 5, 2026Как оплачивать зарубежные сервисы в 2026 году? Можно бегать между посредниками и бояться б…
  6. Oct 5, 2026📂 Напоминалка для работы с SED! Например, sed 's/old/new/g' file.txt заменяет все вхожден…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →