O script de instalação simples diz que não é possível localizar o pacote

1

Este script de instalação está me dando o erro Unable to locate package para a maioria dos programas.

#! /bin/bash

apps=(
'python-dev',
'python-pip',
'python-numpy',
'python-scipy',
'python-matplotlib',
'ipython',
'ipython-notebook',
'python-pandas',
'python-sympy',
'python-nose',
'python-picamera',
'openssh-client',
'openssh-server',
'vim'
)

sudo apt-get update

# Loop over apps and install each one with default 'yes' flag
for app in "${apps[@]}"
do
    sudo apt-get install $app -y
done 

# configure ssh
sudo cp /etc/ssh/sshd_confi /etc/ssh/sshd_config.original
sudo chmod a-w /etc/ssh/sshd_config.original

piplist=(
'networkx',
'scikit-image'
)

for app in "${piplist[@]}"
do
    sudo pip install -U $app
done 

Ele só instalou o vim. Então, eu imagino que minha lista de reps não está atualizada, mas eu pensei que era para isso que 'sudo apt-get update' era.

Quando eu corri sudo apt-get install python-dev , fora do script, ele instalou o pacote.

    
por Liam Pieri 13.03.2015 / 18:31

3 respostas

1

Parece que seu app $ recebe a vírgula anexada a outros nomes de pacotes do que a vim. Tente remover as vírgulas dos aplicativos

ou Experimente

sudo apt-get install $(echo $app | sed 's/,//g') -y

em vez de

sudo apt-get install $app -y

e

sudo pip install -U $(echo $app | sed 's/,//g')

em vez de

sudo pip install -U $app
    
por 13.03.2015 / 19:08
0

A resposta de Miline de que eu deveria substituir sudo apt-get install $app -y por sudo apt-get install $(echo $app | sed 's/,//g') -y foi a solução.

    
por 13.03.2015 / 19:04
0

Você pode remover todas as vírgulas à direita ( , ) após cada membro da matriz, para que você não precise de nenhuma modificação adicional no comando apt-get install . Então, seu script poderia parecer:

#!/bin/bash

apps=(
'python-dev'
'python-pip'
'python-numpy'
'python-scipy'
'python-matplotlib'
'ipython'
'ipython-notebook'
'python-pandas'
'python-sympy'
'python-nose'
'python-picamera'
'openssh-client'
'openssh-server'
'vim'
)

sudo apt-get update

# Loop over apps and install each one with default 'yes' flag
for app in "${apps[@]}"
do
    sudo apt-get install $app -y
done 
    
por 13.03.2015 / 19:21