Я хочу создать скрипт, который загружает все недостающие пакеты, но не устанавливает их немедленно. Для этого я пытаюсь получить список отсутствующих зависимостей при установке нового RPM с помощью программы Perl.Проверка отсутствующих зависимостей без установки RPM
Я пробовал использовать флаг rpm -qpR, но он выводит все требования, а не только недостающие.
Далее я пробовал использовать флагов 0pm rpm -Uvh --test, но не может заставить его работать - он выводит пустую строку.
программа My Perl:
#!/usr/bin/perl -w
$output="";
open(README, "rpm -Uvh ".$ARGV[0]." --test |") or die "Can't run program: $!\n";
while(<README>) {
$output .= $_;
}
close(README);
print "OUTPPUT=".$output."\n";
Я думаю, что проблема в том, что вывод идет в STDERR вместо стандартных вывода.
Цистерны для вашей помощи!
попытка выполнить команду на строку первого, так что вы будете уверены, что ожидаемые результаты. Другое дело - rpm -Uvh - это обновление пакета, это то, что вы хотите. Список [команд] (http://www.cyberciti.biz/howto/question/linux/linux-rpm-cheat-sheet.php), который может помочь. –
@SunilKartikey да, у меня был глубокий взгляд на страницу руководства, вот как я нашел флаг -test. Проблема только с -Uvh заключается в том, что она устанавливается немедленно, пока я хочу найти зависимости без фактической установки. – Kuf