rhel + /usr/lib64 + как восстановить папку

Я не уверен, что это то, что вы ожидали, но в мире BSD (, таких как macOS)-Iи -J, различается способ передачи нескольких «строк» ​​в команду. Пример:

$ ls
file1 file2 file3

$ find. -type f -print0 | xargs -I % rm %
rm file1
rm file2
rm file3

$ find. -type f -print0 | xargs -J % rm %
rm file1 file2 file3

Таким образом, с -Ixargs будет запускать команду для каждого переданного ему элемента отдельно. С -Jxargs выполнит команду один раз, объединит все элементы и передаст их как аргументы вместе.

Некоторые команды, такие как rmили mkdir, могут принимать несколько аргументов и работать с ними так же, как если бы вы передали один аргумент и выполнили их несколько раз. Но некоторые приложения могут меняться в зависимости от того, как вы передаете им аргументы. Например tar. Вы можете создать tar-файл, а затем добавить в него файлы, или вы можете создать tar-файл, добавив в него все файлы за один раз.

$ find. -iname "*.txt" -or -iname "*.pdf" -print0 | xargs -0 -J % tar cjvf documents.tar.bz2 %
0
28.05.2020, 13:17
0 ответов

Теги

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