В настоящее время я пытаюсь создать сценарий, который, когда я введу имя уязвимости, вернет мне оценки CVSS3 из таблицы.
Пока мой план:
- Свернуть страницу
- Grep содержимое, которое я хочу
- вывести скорректированный CVSS3 счет
при запуске myscript, однако grep выдает следующую ошибку:
~/Documents/Tools/Scripts ❯ ./CVSS3-Grabber.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 30964 0 30964 0 0 28355 0 --:--:-- 0:00:01 --:--:-- 28355
grep: unrecognized option '-->Nessus<!--'
Usage: grep [OPTION]... PATTERNS [FILE]...
Try 'grep --help' for more information.
Это меня очень смущает, так как, когда я запускаю это в командной строке, я скручиваю содержимое в sample.txt и затем использую тот же синтаксис grep:
grep $pagetext -e CVSS:3.0/E:./RL:./RC:.
он возвращается ко мне содержание, которое мне нужно, однако, когда я запускаю его через мой скрипт ниже ...
#! /bin/bash
pagetext=$(curl https://www.tenable.com/plugins/nessus/64784)
cvss3_temporal=$(grep $pagetext -e CVSS:3.0/E:./RL:./RC:.)
echo $cvss3_temporal
я получаю ошибки выше!
Я полагаю, что это потому, что '-' вызывает grep думать о тексте внутри файла, что это инструкция, которую grep не знает, следовательно, ошибка. Я попытался скопировать вывод локона в текстовый файл, а затем вычеркнуть его, а не прямо из локона, но все равно не испытывал радости. Кто-нибудь знает способ заставить grep игнорировать '-' или какие-либо флаги при чтении текста? Или в качестве альтернативы, если я могу настроить curl так, чтобы он возвращал только текст без символов?
Заранее спасибо!