Как узнать, какое имя ввести для запуска программы после ее установки с помощью yum / rpm?

16

Я только что установил с rpmпомощью следующей команды:

yum localinstall ./FoxitReader-1.1-0.fc9.i386.rpm 

Теперь это сработало, и я мог запустить приложение, используя:

FoxitReader &

Что делать, если FoxitReaderне удалось запустить приложение и имя было что-то другое. Как я могу узнать, какое имя файла запуска может быть только что установленным?

Rajeshwar
источник

Ответы:

18

Я обычно перечисляю содержимое RPM и фильтрую его, используя /bin/. Файлы в этом каталоге являются исполняемыми.

$ rpm -ql ImageMagick | grep /bin/
/usr/bin/animate
/usr/bin/compare
/usr/bin/composite
/usr/bin/conjure
/usr/bin/convert
/usr/bin/display
/usr/bin/identify
/usr/bin/import
/usr/bin/mogrify
/usr/bin/montage
/usr/bin/stream
SLM
источник
Я получаю package FoxitReader-1.1-0.fc9.i386.rpm is not installedЭто потому, что я использовал yum localinstall для установки?
Раджешвар
1
rpm -ql FoxitReader | grep bin/- не используйте полное имя файла RPM.
garethTheRed
Спасибо, не могли бы вы сказать мне, почему мы не использовали полное имя файла rpm?
Раджешвар
1
Потому что разные параметры rpmкоманды имеют разную семантику. Некоторые ожидают имя установленного пакета, другие - имя физического файла.
tripleee
Вы можете использовать rpm -qlp FoxitReader-1.1-0.fc9.i386.rpmдля rpm -qlf /usr/share/misc/magicrpm -qla
вывода
7

То же самое для Debian; для установленного пакета,

dpkg -L <packagename> | grep -F /bin/

dpkg -Lперечисляет содержимое пакета (в основном распечатывает /var/lib/dpkg/info/<packagename>.list) и grepвыбирает любые пути к файлам, содержащие /bin/.

Для debфайла, который вы еще не установили,

dpkg-deb -c path/to/filename.deb | grep -F /bin/

Для незнакомого пакета вы также обычно хотите проверить, /usr/share/doc/<packagename>/README.Debianи если каталог содержит другие полезные вещи, такие как NEWSфайл examplesили contribподкаталог или , посмотрите на них тоже.

tripleee
источник
2
dpkg -S ищет пакеты, содержащие это имя. Просто бывает, что пакеты обычно содержат файл, соответствующий его имени. Вы действительно хотитеdpkg -L
Анхель
2

Как уже заявили несколько других, ищите «/ bin» в списке файлов пакетов.

Вот Gentoo

$ equery f firefox | grep bin

equeryявляется частью пакета gentoolkit.

user50849
источник
1

С:

rpm -qlp package.rpm

Команда, вы можете получить список файлов внутри файла rpm. Исполняемые файлы, вероятно, будут в некоторой папке bin. Так:

rpm -qlp package.rpm | grep bin 

может работать тоже.

Альперт
источник