O ./
é necessário para informar ao intérprete bash onde o script está localizado. Existe um conjunto fixo de diretórios que o intérprete bash irá verificar para executar um comando.
Se o seu script não estiver em um desses diretórios, ele não encontrará o script, a menos que você especifique o caminho. O ./
está dizendo ao interpretador bash que o script está no diretório atual.
Você também pode executar o script de qualquer outro diretório usando o caminho completo.
por exemplo. ./script.sh
de dentro de /path/to
é o mesmo que executar /path/to/script.sh
de qualquer lugar se o script estiver localizado em /path/to
.
Você pode executar echo $PATH
para obter uma lista de todos os diretórios que o intérprete bash verificará. Se você mover seu script ou colocar um link simbólico em um dos diretórios, você poderá executá-lo usando apenas o nome do arquivo script
.