Awk
solución (para orden estricto y formato de líneas de patrones cruciales):
awk 'NF == 1{
if (f) {
if (NR-n == 1 && $1 == "{")
r = r ORS $0;
else if (NR-n == 2 && $0 ~ /[a-zA-Z]+/)
print "OK" ORS r ORS $0;
}
if ($1 == "/var/log/report") {
f = 1; n = NR; r = $0
}
}n && NR-n > 2{ f = 0 }' file
La salida:
OK
/var/log/report
{
fkergfve
OK
/var/log/report
{
kfreve
OK
/var/log/report
{
jdhe
Эта проблема решена, мой apt -получить обновление не работал и выдавал ошибку в то время, я просто решил это, используя эти команды одну за другой
# sudo -i
# touch /etc/apt/sources.list
# chmod 644 /etc/apt/sources.list
# echo "deb http://http.kali.org/kali kali-rolling main contrib non-free" > /etc/apt/sources.list
# apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 7D8D0BF6
После этого мое обновление apt -get заработало, а затем я использовал эти команды, загрузил драйвер и установил
# git clone https://github.com/mehedishakeel/BroadcomInstaller2017.git
Затем я скопировал загруженный файл на рабочий стол и использовал эти команды
# cd ~/Desktop/BroadcomInstaller2017/
# ls
# cat Readme.md
# chmod +x Broadcom.sh
#./Broadcom.sh
Затем он предлагает 3 варианта, выберите 1 вариант, и будут установлены драйверы Wi-Fi Broadcom.
Я не знаю, сработает ли эта команда для других или нет, но она сработала для меня, в качестве альтернативы есть другая команда.
# apt-get install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux- headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms
Я надеюсь, что эта команда будет работать для других, и теперь этот вопрос закрыт.