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

Как вы можете использовать только файлы tar в каталоге на основе определенного имени файла?

Я хочу создать tar-шар и включить в каталог только те файлы, которые начинаются с определенного имени файла. Например, у меня есть apples-x.x.x и oranges-x.x.x, и я хочу удалить только файлы, начинающиеся с «apple». Как я могу это сделать?

Спасибо!

Может как то так:

find / -type f -name "apple*" -exec tar -rf archive.tar '{}' \;

Это лучше чем tar cf /path/tarfile appl* потому что не архивируйте каталог с шаблоном apple *

Эммм, может я что-то упускаю, но как насчет

tar cf /path/tarfile appl*

Если у вас нет каталогов, которые также называются ./appl*, и в этом случае они попадут в ловушку с их содержимым, которое должно это сделать. Если последнее относится, вы можете остановить это с помощью --no-recursion.

Что о

find / -type f -name "apple*" -exec tar -cf archive.tar '{}' \+

? Таким образом, все имена файлов будут передаваться в tar за один раз (см. -exec команда {} + на странице руководства по поиску).