mv файлы с | xargs

Ifstat - хороший инструмент, и он даст вам все возможности использования интерфейса по отношению к времени.

1
задан 23 June 2014 в 20:30

2 ответа

В идеале вы должны использовать -print0 с поиском, поэтому имена файлов с пробелами не испортят.

Например. это должно работать:

find . -whatever-flags-go-here -print0 | xargs -r0 mv -t target-directory
2
ответ дан 24 May 2018 в 06:23

вы также можете использовать другой способ выполнения, но с дополнительной производительностью:

find . -maxdepth 1 -type f -exec mv {} /etc/apache2/sites-available \+

Обратите внимание, что он заканчивается на \+, что означает для команды find для получения результата и расширения в {}, выполняющего то, что вы хотите, таким образом вы избегаете двух вариантов (\; = для каждой записи И соединяется в новую команду xargs)

(вы также можете проверить руководство man find)

-exec command {} + Этот вариант действия -exec запускает указанную команду в выбранных файлах, но командная строка построена путем добавления каждое имя выбранного файла в конце; общее количество вызовов команды будет намного меньше количества совпадающих файлов. Командная строка построена почти так же, как xargs создает свои командные строки. Только один экземпляр «{}» разрешен внутри команды. Команда выполняется в стартовом каталоге.
0
ответ дан 24 May 2018 в 06:23

Другие вопросы по тегам:

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