Я недавно установил Lubuntu и хотел бы установить пакеты из заданного списка, без необходимости печатать sudo apt-get install package_name. Является ли это возможным?
Я не говорю о сценариях после установки, это нечто совершенно другое.
Если вы хотите, чтобы это установилось в соответствии с любыми требованиями, которые вам нужно будет выполнитьxargs sudo apt-get -y install < pkglist
Эмануэль Эй
+1 Если вы перечисляете один пакет на строку, файл должен использовать окончания строк Unix, иначе apt-get не удастся.
Рат
Кроме того, можно передать имя файла непосредственно xargs с -a или опцией --arg-файла: xargs -a pkglist sudo apt install.
Райан
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^
Разве это не будет намного медленнее, чем просто поместить пакеты в одну строку, поскольку он должен читать списки пакетов и строить деревья зависимостей и т. Д. Для каждого пакета, а не делать это один раз?
Ответы:
Да, просто перечислите все пакеты в строке через пробел. например
источник
-y
опцию. Это довольно долго, но вы можете прочитатьman apt-get
для получения дополнительной информации.Если у вас есть файл (скажем
pkglist
), который содержит список пакетов для установки, как:или
Затем вы можете установить эти пакеты,
apt
используя следующую команду:sudo apt-get install $(cat pkglist)
xargs sudo apt-get install < pkglist
Для получения дополнительной информации
apt-get install
посетитеman apt-get
раздел установки.источник
xargs sudo apt-get -y install < pkglist
xargs -a pkglist sudo apt install
.Поместите все имена пакетов в файл (одно имя пакета для каждой строки). А затем выполните приведенную ниже команду для автоматической установки указанных пакетов.
Пример:
источник