Как удалить ядра с сервера?

Вы можете делать такие вещи, используя команду substitution. В Bash:

mv $(ls -d [sort options] source/* | tail -n8) destination

$(command) будет запускать все, что заключено в нем, и подставлять вывод текста во внешнюю команду. Эта команда ls будет печатать путь к каждому файлу в исходном каталоге, отсортированном по указанным вами флагам, по одному на строку, поэтому tail может просто взять последние несколько. Таким образом, вышеупомянутое расширилось бы до

mv source/file1 source/file2 source/file3 ... source/file8 destination

Вы можете просто запустить ls -d [sort options] source/* | tail -n8, чтобы посмотреть, какие файлы он будет копировать.

В зависимости от того, как вы заказываете вывод ls и имя файла, вы можете сделать то, что ищете более просто, просто используя какой-либо вариант mv source/name_* destination, чтобы скопировать все, начиная с «name_» в целевой каталог.

EDIT: Вышеупомянутые разрывы, когда в именах файлов есть пробелы. Более сложной альтернативой, которая обращается к этому, будет

ls -d1 [sort options] source/* | tail -n8 | tr '\n' '\0' | xargs --null mv -t destination

, хотя он все еще использует вывод синтаксического анализа ls для сортировки в любом порядке, который не является алфавитным.

5
задан 17 May 2012 в 11:08

31 ответ

Создайте сценарий оболочки с этим контентом:

#!/bin/sh
dpkg -l linux-*  | \
awk '/^ii/{ print $2}' | \
grep -v -e `uname -r | cut -f1,2 -d"-"` | \
grep  -e '[0-9]' | xargs sudo apt-get -y purge

Этот скрипт удалит старые ядра, заголовки и источники.

7
ответ дан 15 August 2018 в 19:19
  • 1
    Вы, господин, король! :) ... Освободилось 70% моего дискового пространства на сервере thx до этого – equivalent8 28 January 2015 в 21:16
  • 2
    работает :) im на сервере ubuntu, can not install gui tool – Superbiji 6 February 2015 в 12:54

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

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