CentOS: Bir metin dosyasında listelenen paketler yüklensin mi?


16

Ekstra paketler yüklemek istediğim mevcut bir CentOS kurulumum var. Kurulacak paketler, bana her satıra bir paket olacak şekilde bir listede verildi:

....
Cluster_Administration-en-US.noarch
ElectricFence.x86_64
GConf2.i386
GConf2.x86_64
GConf2-devel.i386
GConf2-devel.x86_64
Global_File_System-en-US.noarch
ImageMagick.i386
...

Bu metin dosyasını kullanarak, listelenen her paketi yüklemenin bir yolu var mı? Listenin aslında işletim sistemi ilk kurulduğunda yüklenmiş olabilecek 'tüm' paketlerin bir listesi olduğundan şüpheleniyorum.

Yanıtlar:


28

Evet, şunu yapın:

yum -y install $(cat file_name)


Her pakette bunları bulmak yerine tüm bağımlılıklara aynı anda bakacağı için bu çok daha hoş.
— Marcin

Evet bu doğru.
— paintbox

Bu gerçekten eski bir soru, ama bu kesinlikle bana yardımcı oldu. Satır feed'leriyle ayrılmış paketlere sahip bir dosyanız varsa, aşağıdakileri yapmanız gerekir: yum -y install $ (cat dosyaadı cat | tr '\ n' '')
— SteveM 30:14

Vay. Çok basit ben sadece kendim düşünmek yerine google olabilir.
— bgStack15

2
Paket listesi, komut satırı maksimum uzunluğunu aşarsa, bu çok iyi çalışmaz.
— Chris Cogdon

3

Şunu deneyin xargs:

cat textfile | xargs yum -y install

 


2
Birleştirilecek hiçbir şey yoktur - bu nedenle, < textfile xargs yum -y installeşdeğerdir ve bir çatal / exec kaydeder.
— maxschlepzig

0

Bunu komut satırında da deneyebilirsiniz.

for i in `cat textfile` ; do yum -y install $i; done

Textfile içindeki her i için yum-y kurulumu yapar.


2
Mafcin'in yukarıda belirttiği gibi, bu her pakete bağımlılık kontrolü yapacaktır. her satır için.
— paintbox

0

cat YOURFILE | xargs yum -y install

Bu, @ daisy'nin çözümü ile hemen hemen aynıdır, ancak paket listesi komut satırı için çok uzunsa, ayrı yum installkomutlara bölecaktır.


Bu, JucaPirama'nın cevabını çoğalttı - 1 yıl önce gönderildi.
— maxschlepzig
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.