Не удалось получить файлы из результатов поиска в tar-файл

Этим числом Apple указывает систему (, которая является полностью 64-битной, начиная с Snow Leopard )
. может запускать как 32-битные, так и 64-битные приложения

0
16.05.2020, 16:08
2 ответа

может быть «найдена» передача пустой строки или что-то в этом роде, вы можете устранить неполадку с помощью «--no -run -if -empty», тогда не нужно создавать tar.

find /app/test -type d  \( -name logs -o -name 'logs*' -o -name 'tmp*' \) -prune -o  -print0 | xargs --no-run-if-empty -0 tar -cvf /app/test_Backup.tar

кстати, ваш код работал на моей малине. GNU bash, версия 4.4.19 (1 )-выпуск (armv7hl -redhat -linux -gnu)

0
28.04.2021, 23:13

Если ваша команда findгенерирует много имен путей, то xargsскорее всего выполнит tarнесколько раз. Каждое выполнение tarбудет перезаписывать архив, созданный при последнем выполнении tar, так что, в конце концов, у вас останется архив, состоящий из последней партии файлов, найденных find.

Предполагая, что вы используете AIX (, так как вы отметили свой предыдущий вопрос тегом ), вы, вероятно, хотите записать пути к файлу, а затем использовать этот файл сtar -L listfile(опция -Lдляtarв AIX получает файл списка, содержащий пути к архиву ).

find...as you had... >listfile
tar -cf archive.tar -L listfile

Поскольку у меня нет доступа к системе AIX, я, к сожалению, не могу это проверить.

0
28.04.2021, 23:13

Теги

Похожие вопросы