ติดตั้งรายการแพ็คเกจโดยใช้ apt-get


8

ฉันต้องติดตั้งใหม่ของ Lubuntu sudo apt-get install package_nameและต้องการที่จะติดตั้งแพคเกจจากรายการที่กำหนดโดยไม่ต้องพิมพ์ เป็นไปได้ไหม?

ฉันไม่ได้พูดถึงสคริปต์หลังการติดตั้งซึ่งเป็นสิ่งที่แตกต่างอย่างสิ้นเชิง


คำตอบ:


5

ใช่เพียงแค่แสดงรายการแพคเกจทั้งหมดในบรรทัดที่คั่นด้วยช่องว่าง เช่น

sudo apt-get install package_name1 package_name2 package_name3 package_name4

ขอบคุณฉันจะหยุด apt-get จากการถามคำถาม y / n ไม่ว่าฉันต้องการติดตั้งแพคเกจจริงหรือไม่
syntagma

2
เพิ่ม-yตัวเลือก มันค่อนข้างยาว แต่คุณสามารถอ่านman apt-getข้อมูลเพิ่มเติมได้
Sparhawk

23

หากคุณมีไฟล์ (พูดpkglist) ซึ่งมีรายการแพคเกจที่จะติดตั้งเช่น:

pkg1
pkg2
pkg3

หรือ

pkg1 pkg2 pkg3

จากนั้นคุณสามารถติดตั้งแพ็กเกจนั้นโดยaptใช้คำสั่งต่อไปนี้:

  1. sudo apt-get install $(cat pkglist)
  2. xargs sudo apt-get install < pkglist

สำหรับกลุ่มข้อมูลข่าวสารเพิ่มเติมเกี่ยวกับการติดตั้งapt-get installเยี่ยมชมman apt-getส่วน


2
หากคุณต้องการให้สิ่งนี้ติดตั้งตามข้อกำหนดใด ๆ ที่คุณต้องทำxargs sudo apt-get -y install < pkglist
Emanuel Ey

+1 หากคุณแสดงรายการหนึ่งแพคเกจต่อบรรทัดไฟล์จะต้องใช้ปลายสาย Unix หรือ apt-get จะล้มเหลว
rath

นอกจากนี้คุณยังสามารถส่งผ่านชื่อไฟล์โดยตรงกับ xargs กับ -a หรือตัวเลือก --arg xargs -a pkglist sudo apt installไฟล์:
Ryan

1

ใส่ชื่อแพ็กเกจทั้งหมดลงในไฟล์ (ชื่อแพ็กเกจหนึ่งชื่อสำหรับแต่ละบรรทัด) จากนั้นเรียกใช้คำสั่งด้านล่างเพื่อติดตั้งแพ็คเกจที่กำหนดโดยอัตโนมัติ

while read -r line; do sudo apt-get -y install "$line"; done < /path/to/the/packages/file

ตัวอย่าง:

$ cat file
vlc
firefox
$ while read -r line; do sudo apt-get install "$line"; done < file
[sudo] password for avinash: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
vlc is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 499 not upgraded.
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  ttf-lyx
The following packages will be upgraded:
  firefox
1 upgraded, 0 newly installed, 0 to remove and 498 not upgraded.
Need to get 35.8 MB of archives.
After this operation, 24.3 MB of additional disk space will be used.
Get:1 http://ftp.cuhk.edu.hk/pub/Linux/ubuntu/ trusty-updates/main firefox amd64 33.0+build2-0ubuntu0.14.04.1 [35.8 MB]
0% [1 firefox 67.0 kB/35.8 MB 0%]                           10.4 kB/s 57min 16s^

นี่จะไม่ช้ากว่าการวางแพ็กเกจลงในหนึ่งบรรทัดเพราะมันต้องอ่านรายการแพ็กเกจและสร้างแผนผังการพึ่งพาเป็นต้นสำหรับแต่ละแพ็คเกจแทนที่จะทำเพียงครั้งเดียว
Sparhawk
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.