Así es como haría esto como una tubería perl rápida:
perl -p00e 's/\nzone/\n\nzone/g' inputfile \
| perl -n00e '$t = $_; s/^\*.*?\n//mg; print $t if /pwwn/' \
| perl -p00e 's/\n\n/\n/'
La primera línea agrega una línea en blanco entre cada registro. La segunda línea itera sobre cada registro, verificando si quedan líneas pwwn
después de eliminar todas las líneas que comienzan con *dentro de ese registro --y, de ser así, imprime ese registro. La tercera línea elimina las líneas en blanco que separan cada registro.
Исходники Fedora можно найти на любом официальном зеркале:http://mirrors.kernel.org/fedora/releases/29/Everything/source/tree/Packages/
Вы также должны иметь возможность использовать dnf download --source $package_name
для загрузки напрямую из настроенных репозиториев.
После загрузки SRPM вы можете установить его rpm $package.src.rpm -ivh
, а файл SPEC будет находиться по адресу ~/rpmbuild/SPEC/$package _name.spec
Если вы не хотите устанавливать SRPM, а просто хотите извлечь файл SPEC, вы можете запустить rpm2cpio $package.src.rpm | cpio -idmv *.spec
, и он извлечет файл SPEC в ваш текущий рабочий каталог.
Почему бы не перейти в репозиторий Fedora git ? Например, ссылка на файл Firefox SPEC:
https://src.fedoraproject.org/cgit/rpms/firefox.git/plain/firefox.spec