TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #324 1.03K
Упаковка структуры каталогов с фильтрацией

Когда нужно архивировать не весь каталог, а только часть - с фильтрацией и даже переименованием путей внутри архива - на помощь приходят find, tar и его флаг --transform.

▪️ Базовый пример: фильтруем по маске и архивируем


find project/ -type f -name "*.conf" > list.txt
tar -czf config_backup.tar.gz -T list.txt


Тут мы архивируем только .conf-файлы.

▪️ Добавим переименование путей внутри архива. Архивируем все из src/, но хотим, чтобы внутри архива это лежало как app/.


tar -czf app.tar.gz \
--transform='s|^src|app|' \
-C ./ src


--transform использует sed-подобные выражения. Тут s|^src|app| означает: заменить в начале пути src на app.

▪️ Упаковка через find + --transform + относительные пути. Предположим, хотим архивировать только .sh и .py-файлы, заменив scripts/ на bin/ внутри архива:


find scripts/ -type f \( -name "*.sh" -o -name "*.py" \) > filelist.txt

tar -czf bin_scripts.tar.gz \
--transform='s|^scripts|bin|' \
-T filelist.txt


▪️ Упрощенный однострочник:


find scripts/ -type f -name "*.sh" \
| tar -czf archive.tar.gz --transform='s|^scripts|bin|' -T -


▪️ Продвинутый пример: исключения + трансформация + директория


find ./src -type f ! -name "*.tmp" \
| tar -czf src_clean.tar.gz \
--transform='s|^./src|clean_src|' \
-T -


BashTex 📱 #bash #utils
  • 👍 9
More from @bash_tex
  1. Oct 9, 2026BashTex 📱 #мем
  2. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  3. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  4. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
  5. Oct 5, 2026name_to_handle_at() - как получить файловый объект без обычного пути В Linux обычно обраща…
  6. Oct 2, 2026madvise() - как процесс подсказывает ядру, как он собирается использовать память Когда про…
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 →