Apt-get ile paketleri yüklemek için dosya kullanma


9

Brewfiles, caskfiles, dockerfiles, package.json gibi paket dosyaları aracılığıyla yeni bir makineye paket yüklemeyi çok uygun buluyorum.

Hala
komut satırı üzerinden kullanıyorum çünkü apt-get için buna bir alternatif var mı

apt-get install pkg1 pkg2 pkg3…

?


2
Birine ihtiyacı var mı? Sen kullanabilirsiniz xargs: xargs -P1 apt-get install < list-of-packages.
muru

muru iyi Gerçekten xargs (şimdi okuma adam) nasıl çalıştığını bilmiyorum ama paketleri tek bir dosyada merkezi olması için bir çözüm olduğunu düşünmüyorum? Hala üç paket ile bir .txt dosyası kullanıldığından beri dosyaları el ile listelemeliyim (Debian'da test edildi)
thibmaek

1
<Kabuk yönlendirilişi. Birden fazla dosya için şunları kullanın:cat file1 file2 .. | xargs -P1 apt-get install
muru

Yanıtlar:


13

Sorunuzun yorumlarında belirtildiği gibi, packages.txtyüklenecek paketleri listeleyen basit bir metin dosyası oluşturabilirsiniz :

iceweasel
terminator
vim

ve sonra aşağıdaki komutu çalıştırın:

cat packages.txt | xargs sudo apt-get install

xargs, paket adlarını packages.txtdosyadan komut satırına geçirmek için kullanılır . Man sayfasından:

xargs, boşluklarla sınırlandırılmış (çift veya tek tırnak veya ters eğik çizgi ile korunabilir) veya yeni satırlarla standart girdideki öğeleri okur ve komutu (varsayılan olarak / bin / echo'dur) takip eden ilk bağımsız değişkenlerle bir veya daha fazla kez yürütür standart girdiden okunan öğelere göre.


9

@ Ortomala-lokni'nin cevabını biraz geliştirerek, dosyayı doğrudan bir argüman olarak verebilirsiniz xargs:

xargs -a packages.txt sudo apt-get install

İsteğe bağlı olarak verebilir önleme seçeneği eğer senin hiç koşmak olmaktan çağrıyı herhangi boşluk olmayan karakterleri içermez.xargs-rapt-getpackages.txt


Bu Alp / BusyBox özelliği olabilir, ancak -aarg belgelenmiş değildi ve orada işe görünmüyordu: xargs: unrecognized option: a. Gösterilen sürüm BusyBox v1.27.2 (2017-12-12 10:41:50 GMT) multi-call binary.
çıktım

Kabul edilen cevabı kullanmak apt sorgusunu iptal etti. Bunu kullanmak işe yaradı. Teşekkürler!
Tamam Letsdothis

1

resim açıklamasını buraya girin

benim için her iki şekilde çalışır, en son xargs'e sahip olduğunuzdan emin olun veya başka bir şekilde -a seçeneğine sahip olup olmadığını kontrol edin (xargs --help)


5
Bu cevabın erişilebilirlik sorunları var: Görüntülerdeki metin, kör insanlar tarafından okunamıyor.
ctrl-alt-delor

0

Daha genel komut dosyası çözümlerinin yanı sıra, bir deb paketi de oluşturabilirsiniz.

ihtiyacın olacak

  • equivs-build, borç oluşturmak için. Borç sadece bağımlılıklar içerebilir. Bu basitleştirilmiş bir borç oluşturucudur.
  • gdebi deb yüklemek için.

Bu, tüm debian tabanlı sistemlerde (apt / deb dosyalarını kullanan sistemler) çalışacaktır.

Bir kabuk komut dosyasının aksine, deb dosyalarıyla yapmanın avantajı, geri almanın çok daha kolay olması, bir deb'i kaldırabilmeniz veya bir deb'i yeniden yapılandırabilmeniz ve yeniden yüklemenizdir (bu, dosyaların eklendi ve kaldırıldı).

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.