terça-feira, 12 de novembro de 2013

Dicas Linux - Erro ao rodar script sh


Quando executo um script .sh obtenho a seguinte resposta:

/bin/bash^M: interpretador inválido: Arquivo ou diretório inexistente

ou

/bin/sh^M: interpretador inválido: Arquivo ou diretório inexistente

Esse problema é gerado quando crio o script no Windows e copio para o Linux.

A edição de arquivos no Windows cria caracteres de quebra de linha adicionais. O Windows usa 2 caracteres para quebra de linha; o Linux apenas 1. Assim, esse caracter fica sobrando. Para solucionar isto, basta chamar

dos2unix nome-do-arquivo.sh

Caso não exista este arquivo instale o dos2unix com:

sudo apt-get install dos2unix



Nenhum comentário:

Postar um comentário