
Scripts são sequências de comandos que podemos escrever um um arquivo. Por não serem compilados, os scripts são facilmente acessíveis e editáveis.
Para executar um script devemos abrir um terminal (shell) na pasta do script, apontar o caminho (path) ou, para conveniência e segurança, adicionar essa pasta à variável de ambiente PATH, de forma que o sistema operacional procure nela nossos scripts pessoais, ou profissionais, sem misturar com os scripts de terceiros que já estejam instalados na máquina.
Como regra geral, no GNU-Linux, as pastas que contém scripts são:
/bin, /sbin, /usr/sbin, /usr/local/bin e /usr/local/sbin
Se quiser checar, digite o comando:
echo $PATH
A saída vai ser uma lista de endereços de pastas separados por dois pontos, “:“. Algo semelhante a:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Se quiser adicionar sua pasta de scripts ao $PATH para não precisar digitar todo o path, pode digitar no terminal:
export PATH=$PATH:/users/seu_usuario/Documentos/scripts/
Ao fazer isso e digitar nome do script em qualquer lugar do sistema de arquivos, vai conseguir que ele execute corretamente. Mas esse export está associado à sessão atual do shell, quando ele for fechado, ou se você tentar usar outro terminal, não vai ter acesso global ao script.
Para tornar o acesso à pasta de scripts permanente, navegue até a sua pasta /home, com o comando cd ~. Digite ls -la para listar os arquivos da pasta, inclusive os ocultos. Procure por um dos seguintes: .bashrc, .bashrc_profile. Se estiver em um Mac, o shell atual deve ser o Z Shell, também chamado zsh, nesse caso, procure por arquivos como .zprofile.
Abra o arquivo com o seu editor preferido e adicione:
export PATH=$PATH:/users/seu_usuario/Documentos/scripts/
Salve as alterações, feche o terminal e, quando voltar a abri-lo teste com echo $PATH. Se tudo deu certo, a saída deve conter a sua pasta de scripts:
/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/seu_usuario/Documents/scripts/