lista de programas com instalação apt com pacotes ausentes

0

Eu quero instalar uma lista de pacotes através do comando

sudo apt-get install app1 app2 etc

Eu tentei, mas devido a um pacote ausente, o apt-get não instala nada. Então eu olho em profundidade no man apt-get install e encontrei a opção --fix-missing! No entanto, parece que não funciona! Diz:

E: could not find package xxxxxx 

e ele pára.

Eu preciso usar a opção list, não consigo escrever sudo apt-get install para cada pacote, e até eu preciso ter certeza de que o script onde eu quero usar este comando irá instalar o máximo possível de pacotes, não cuidado se vai perder a instalação de um. Obrigado

Exemplo prático:

cirelli @ asus: /mnt/data/first-boot-master $ sudo apt-get install atom skype
Reading package lists ... Done
Building dependency tree
Reading state information ... Done
E: Could not find skype package

Estou usando Ubuntu Gnome 16.04

apt show apt:
Package: apt
Version: 1.2.12~ubuntu16.04.1

P.S .: página man do apt-get

    
por Cirelli94 17.07.2016 / 13:54

1 resposta

2

Não vejo opções que fazem com que apt (ou apt-get ) ignore um pacote inexistente e continue instalando os outros.

No entanto, você pode executar apt install para cada pacote em sua lista separadamente, assim um pacote inexistente não aborta a instalação dos outros.

Um simples loop Bash for é muito útil aqui:

sudo bash -c 'for pkg in cowsay cowtalk ; do apt install $pkg ; done'

Este comando executa um loop for em um shell Bash com privilégios de root. O próprio loop executa apt install PACKAGE para cada PACOTE na lista cowsay cowtalk .

Enquanto cowsay existe, cowtalk não. Você vê a saída aqui:

$ sudo bash -c 'for package in cowsay cowtalk ; do apt install $package ; done'
[sudo] password for bytecommander: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  cowsay-off
Suggested packages:
  filters
The following NEW packages will be installed
  cowsay cowsay-off
0 to upgrade, 2 to newly install, 0 to remove and 0 not to upgrade.
Need to get 21,7 kB of archives.
After this operation, 112 kB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://ftp.uni-stuttgart.de/ubuntu xenial/universe amd64 cowsay all 3.03+dfsg1-15 [18,0 kB]
Get:2 http://ftp.uni-stuttgart.de/ubuntu xenial/universe amd64 cowsay-off all 3.03+dfsg1-15 [3.640 B]
Fetched 21,7 kB in 0s (117 kB/s)      
Selecting previously unselected package cowsay.
(Reading database ... 304276 files and directories currently installed.)
Preparing to unpack .../cowsay_3.03+dfsg1-15_all.deb ...
Unpacking cowsay (3.03+dfsg1-15) ...
Selecting previously unselected package cowsay-off.
Preparing to unpack .../cowsay-off_3.03+dfsg1-15_all.deb ...
Unpacking cowsay-off (3.03+dfsg1-15) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up cowsay (3.03+dfsg1-15) ...
Setting up cowsay-off (3.03+dfsg1-15) ...
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package cowtalk
    
por Byte Commander 17.07.2016 / 14:27