Как удалить каталоги на основе вывода `find`: ТОЛЬКО первый результат

Похоже, произошла ошибка чтения, поэтому распакованные данные не имеют действительной контрольной суммы.

Возможные причины:

  • Ошибки RAM / SRAM.
  • Слишком мало RAM / SRAM.
0
21.01.2019, 15:45
2 ответа

Вы можете использовать -quitпосле использования -deleteили -exec:

.

-quit
Exit immediately. No child processes will be left running, but no more paths specified on the command line will be processed.


Удаление первого результата вашей команды find:

find * -type d -exec rm -Rf {} \; -quit

или

find. ! -path. -type d -exec rm -Rf {} \; -quit

Последний найдет скрытые папки.


Note, that your find output may not be sorted alphabetically.

Для удаления первого результата после сортировки:

find * -maxdepth 1 -type d -print0 | sort -z | head -zn1 | xargs -r0 rm -Rf

Для числовой сортировки используйте sort -zn.

4
28.01.2020, 02:23

Это кажется очень опасным, но вы можете попробовать:

find * -type d | head -n1 | xargs rm -rf
-1
28.01.2020, 02:23

Теги

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