Как играть песню, когда вирус обнаруживается с clamav из командной строки? Песня и не звонок.
Для получения информации я делаю это для сканирования со звонком: clamscan-r - звонок-i / медиа
Спасибо,
Кажется, что clamscan (1) отправляет свой вывод в stdout, так передайте его по каналу для кладения для первого удара, который отправит вывод в stdout и в команду, которая фильтрует для "Вируса, обнаруженного" и whan, который найден, это вызывает программу, чтобы играть музыку. Из руководства Пользователя антивирусного решения моллюска кажется, что вывод будет тем, что производит эта строка:
printf ("Вирус обнаружил: %s\n", virname);
Что-то вроде этого должно работать:
clamscan |tee (grep "Virus detected" | yourprogram_or_script musicfile )
См. https://raw.githubusercontent.com/vrtadmin/clamav-faq/master/manual/clamdoc.pdf и clamscan (1) и кладите для первого удара (1) для большего количества информации.
Из комментариев, FI0RlAN-X, с которым отвечают:
/usr/bin/clamscan -r -l /var/log/clamscan_sched_$d.log /home/pi/Desktop; [ $? -eq 1 ] && espeak -v en+f2 -s 150 'Warning, a virus has been detected'
Разбивать это немного, clamscan опции, от человека clamscan
- r, - рекурсивный
Scan directories recursively. All the subdirectories in the given directory will be scanned.
- l ФАЙЛ, - log=FILE
Save scan report to FILE.
КОДЫ ВОЗВРАТА
0 : No virus found. 1 : Virus(es) found. 2 : Some error(s) occured.
Так вторая команда, $?
код возврата от clamscan, таким образом протестируйте, если код возврата равняется 1 (найденный вирус) [ $? -eq 1 ]
и играйте звук с помощью звука с espeak espeak -v en+f2 -s 150 'Warning, a virus has been detected'
[ $? -eq 1 ] && espeak -v en+f2 -s 150 'Warning, a virus has been detected'