Полностью удалить все установленные мной пакеты?

Сам clamscan не предоставляет таких переключателей для подавления вывода, но вы можете передать его по конвейеру вывести или сгенерировать файл журнала в сценарий awk для фильтрации.

Предполагается, что -o задано, а -v установлено не .

Файл: filter.awk : (установить chmod + x filter.awk )

#!/bin/awk -f
BEGIN {
        split("Symbolic link,Excluded,Empty file", col2, ",")
        FS=": "
}
{
        skip_line = 0
        for (i in col2) {
                if ($2 == col2[i]) {
                        skip_line++
                        break
                }
        }
        # uncomment next 4 lines below to remove FOUND info
        #if (skip_line == 0) {
        #        if ($2 ~ /FOUND/) {
        #                skip_line++
        #        }
        }

        if (skip_line == 0) {
                print $line
        }
}

пример использования:

clamscan -o -r /home | /path/filter.awk

или

cat /var/log/clamscan.log | /path/filter.awk
12
11.05.2016, 10:39
3 ответа

Перечислите все файлы в порядке, обратном дате их установки, в файл:

rpm -qa --last >list

Вы получите строки вида

atop-2.1-1.fc22.x86_64                        Wed Apr 13 07:35:27 2016
telnet-server-0.17-60.fc22.x86_64             Mon Apr 11 20:10:43 2016
mhddfs-0.1.39-3.fc22.x86_64                   Sat Apr  9 21:26:06 2016
libpcap-devel-1.7.3-1.fc22.x86_64             Fri Apr  8 09:40:43 2016

Выберите дату окончания, которая относится к вам, и удалите все строки, следующие за ней. После удаления части даты отдайте оставшиеся строчки yum для удаления. Например,

sudo yum remove $(awk '{print $1}' <list)
15
27.01.2020, 19:55

Вы также можете попробовать с yum history , и обычно вы получаете нумерованный список того, что было установлено, например:

[root@localhost ~]# yum history
Loaded plugins: product-id, refresh-packagekit, subscription-manager
Updating Red Hat repositories.
ID | Login user               | Date and time    | Action(s)      | Altered
 3 | root <root>              | 2011-09-14 14:36 | Install        |    1   
 2 | root <root>              | 2011-09-12 15:48 | I, U           |   80   
 1 | System <unset>           | 2011-09-12 14:57 | Install        | 1025  

, а затем можете использовать yum history undo 3 например.

Подробнее об истории yum здесь .

7
27.01.2020, 19:55

-liner ниже:

# yum history list|awk '$1 ~ /[0-9]+/ {print $1}'| while read a; do yum history undo -y $a; done

Будьте осторожны при выполнении этой команды, потому что она удалит все установленные вами пакеты! Если вам нужно подтверждение, вы можете удалить флаг -y.

0
27.01.2020, 19:55

Теги

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