PATH
é uma variável de ambiente em sistemas operacionais como o Linux, Windows, que possui um conjunto específico de diretórios onde os programas executáveis estão localizados. De acordo com sua pergunta, seu script executável é colocado sob o diretório $HOME/bin
. Portanto, se você deseja executar um script que não esteja no PATH, é necessário fornecer um caminho estrutural completo para permitir que o sistema operacional atinja o arquivo para executá-lo. Por exemplo,
sudo $HOME/bin/<nameofthescript>
Se você não quiser dar o caminho completo para o arquivo o tempo todo, você pode colocar esse caminho no ambiente real usando o comando abaixo. Consedendo, você manteve seu script no diretório $HOME/bin
.
PATH=$PATH:$HOME/bin
O comando acima irá adicionar seu diretório bin ao caminho do ambiente e, em seguida, você pode usar <nameofscript>
de qualquer lugar no sistema.
Além disso, isso só funcionará até o momento em que o seu bash estiver rodando, se você tentar o mesmo no novo terminal, o seu PATH será alterado para o padrão. Para torná-lo permanente, você precisa adicionar a linha abaixo no arquivo $HOME/.profile
ou $HOME/.bashrc
.
export PATH=$PATH:$HOME/bin
Para permitir que apenas o usuário raiz execute o <nameofscript>
de qualquer lugar, você pode colocar no diretório /sbin
ou /usr/sbin
.