Salve honoráveis, boa noite. Sempre que escrevo um código em um script que possa ser reutilizado em outros (tipo funções, por exemplo) ou que possa compartilhar parâmetros com outros scripts, como váriáveis, eu costumo por estes trechos em arquivos separados e incorporá-los usando o comando: '. /fullpath/arquivo.sh' no código do script (meio sem saber extamente o porquê do '. ' antes do endereço do arquivo).
Eu sempre dei, previamente, permissão de execução para este arquivo de parâmetros/funções, mas hoje, ao esquecer de dar permissão a um novo arquivo destes, percebi que ela não é necessária (!!!) para que este arquivo seja executado. Isso nunca havia me ocorrido, mas me chamou a atenção para um detalhe: este tipo de comportamento não compromete a segurança? Afinal, se eu tentar chamar o arquivo diretamente (ex: '/fullpath/parametros.sh'), seja via outro script ou diretamente no prompt, o shell nega a execução, mas se chamá-lo usando '. /fullpath/parametros.sh' ele é executado, inclusive no prompt (e eu nem preciso ser root para isso). Talvez eu esteja confundindo conceitos ou usando o '. /arquivo' indevidamente. Então, alguém, por favor, poderia me explicar por que eu consigo executar um arquivo sem permissões de execução apenas acrescentando um '. ' antes dele? Abraço Cristiano Ferrari
