Могу ли я использовать шаблоны файлов, отличные от star with yum?
Я точно знаю, что yum не поддерживает регулярные выражения в своих командах установки, но мне интересно, есть ли способ имитировать его и иметь одну команду, которая выполняет:
- установить пакеты python-foo или python2-foo (или оба)
- не устанавливает пакеты python3-foo
Обычно для этого используется регулярное выражение python[2]?-foo
, Как это сделать только с ням?
2 ответа
Я нашел способ получить похожий тип поведения, используя
yum -y --exclude='python3*' install python*-foo
Этот метод позволяет избежать установки версий Python, отличных от желаемых. Может быть не идеален, но он сделал работу в моем случае.
Поскольку для поиска среди пакетов нет другого способа, кроме использования шаблонов оболочки, вы должны обойти это, зная общую часть имени пакета, такую как python
это должно быть использовано в yum
поиск, а затем сделать grep
для сужения результатов:
yum search python | grep -Po '(?i)^\S*?python2?-foo\S*' > packages
Тогда используйте yum install $(cat packages)
пройти установку всех тех.