как узнать, потребуется ли перезагрузка

Ниже я включил ответ на ваш вопрос, однако хочу подчеркнуть, что с этой командой нужно проявлять особую осторожность. Вывод вашего исходного awk направляется в rm -rf , это означает, что эта команда принудительно удаляет все перечисленные папки.

Убедитесь, что вы очень внимательно относитесь к тому, где вы запускаете это, потому что, если запускать в большинстве мест, это может вызвать серьезные проблемы или непоправимый ущерб системе.


find . -maxdepth 5 -type d -exec bash -c "echo -ne '{} '; ls '{}' | wc -l" \; -print0 | awk '$NF<=10' | xargs rm -rf

Вывод исходной команды передается в xarge rm -rf , xargs преобразует исходный вывод в аргументы для другой программы, в данном случае rm .

Выдержка из справочной страницы для rm для двух используемых коммутаторов:

       -f, --force
          ignore nonexistent files, never prompt

       -r, -R, --recursive
          remove directories and their contents recursively

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

3
08.12.2016, 16:04
1 ответ

Для Debian и Ubuntu вы можете выполнить пробное обновление с помощью apt-get dist-upgrade -s и найти новое устанавливаемое ядро. За исключением очень немногих случаев, это должно охватывать все.

Исключения, которые я могу придумать:

  • корневой или другие важные разделы стороннего модуля ядра, получает апгрейд.
  • Блокировка grsec в ядре, где некоторые действия недоступно до перезагрузки
0
27.01.2020, 21:37

Теги

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