ค้นหา rpms ที่ติดตั้งโดยผู้จำหน่าย


9

ฉันพยายามหาไวยากรณ์เพื่อใช้ในการค้นหา rpms ที่ติดตั้งโดยผู้จำหน่ายเฉพาะใน Linux ฉันนึกคิดเพียงพยายามใช้ rpm -qi grepping สำหรับผู้จำหน่ายเฉพาะ แต่ดูเหมือนจะไม่ทำงาน ใครมีไวยากรณ์สำหรับการค้นหานี้


ฉันกำลังมองหาวิธีสอบถาม rpms ที่ติดตั้งซึ่งอาจมีสิทธิ์ใช้งานที่เกี่ยวข้อง - ตัวอย่างเช่น IBM หรือ Oracle ฉันจะใช้วิธีการอื่นในลักษณะใด?
lorrie82

คำตอบ:


9

คุณสามารถแสดงแพ็คเกจตามผู้ขายโดยใช้รูปแบบแบบสอบถาม ฉันจะพิจารณาสิ่งนี้เพื่อแสดงรายการแพ็คเกจทั้งหมด:

rpm -qa --queryformat '%{vendor}:%{name}\n' | sort > packages.txt

จากนั้นคุณสามารถตรวจสอบpackages.txtไฟล์ซึ่งจะมีลักษณะดังนี้และจะถูกจัดเรียงตามผู้ขาย:

Codership Oy:galera
Fedora Project:certbot
Fedora Project:clang
Fedora Project:epel-release
...
(none):gpg-pubkey
(none):nginx
...
Red Hat, Inc.:acl
Red Hat, Inc.:aic94xx-firmware
...
Remi Collet:php-cli
Remi Collet:php-common

หรือคุณสามารถgrepแทนได้ถ้าคุณรู้ว่าคุณกำลังมองหาอะไร

rpm -qa --queryformat '%{vendor}:%{name}\n' | grep 'Red Hat'

แต่การสืบค้น rpmdb นั้นใช้เวลาสักครู่ดังนั้นจึงเร็วกว่าที่จะถ่ายโอนข้อมูลทั้งหมดไปยังไฟล์จากนั้นอ่านหรือgrepไฟล์

grep 'Red Hat' packages.txt

สำหรับคะแนนโบนัสพิเศษลองรูปแบบแบบสอบถาม'%{vendor}:%{name}:%{license}\n'ซึ่งจะผนวกข้อมูลใบอนุญาตจากแต่ละ RPM

Red Hat, Inc.:acl:GPLv2+
Red Hat, Inc.:aic94xx-firmware:Redistributable, no modification permitted
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.