A obtenção de um script de outro script falha

0

Eu tenho um script em um arquivo - install.sh - com este conteúdo:

#!/bin/bash
wget https://raw.githubusercontent.com/aspnet/Home/master/kvminstall.sh
sh kvminstall.sh
source ~/.kre/kvm/kvm.sh

Tudo funciona, exceto a última linha que fornece o erro:

**install.sh: 4: install.sh: source: not found**  

Em seguida, substituí source por . , mas depois recebo o erro:

**install.sh: 363: /home/vagrant/.kre/kvm/kvm.sh: Syntax error: "(" unexpected (expecting ";;")**

O que posso fazer para que funcione?

    
por Christian 14.02.2015 / 23:50

1 resposta

3

Considere esta mensagem de erro:

install.sh: 4: install.sh: source: not found

Isso significa que o script não está sendo executado por bash . Esse erro provavelmente vem de dash , que é o shell padrão no Ubuntu.

Tente executar seu script como:

bash /path/to/install.sh

Mais

Observe a linha:

sh kvminstall.sh

Isso inicia kvminstall.sh usando o shell padrão ( dash ). No entanto, kvminstall.sh é um script bash . (você pode dizer isso olhando para a primeira linha.) Assim, use:

bash kvminstall.sh
    
por John1024 14.02.2015 / 23:56