Como executar meu próprio programa sem especificar seu caminho

10

Vamos supor que eu tenha compilado algo e eu o execute assim:

$ /path/to/my/executable/mycmd
Hello World

O que preciso fazer para executá-lo como

$ mycmd
Hello World 

de qualquer lugar no meu computador?

    
por nacho4d 08.08.2011 / 09:24

1 resposta

14

O que você está procurando é a variável ambiental PATH . Diz ao shell, onde precisa procurar por programas. Você pode ver o valor atual dessa variável usando echo :

echo "$PATH"

Agora ... A prática recomendada se você quiser usar algum novo programa é instalá-lo usando o programa de gerenciamento de pacotes para sua distribuição. Mas neste caso, suponho que você esteja lidando com um programa que não é entregue por nenhum pacote de software disponível. Para esses programas, você tem duas opções:

  1. Instale o programa em todo o sistema, em um local onde o seu sistema não coloque nenhum arquivo instalado a partir dos pacotes. Na maioria dos sistemas, essas pastas "seguras" incluem /usr/local/bin/ e /opt/bin/ - essas já devem estar em PATH . (Olhe dentro dessas pastas e se houver muitos arquivos nelas, então é o lugar errado para colocar seu próprio programa e você tem que olhar para outras pastas listadas em seu PATH .)
  2. Modifique sua variável PATH . Isso é menos seguro, porque define pastas adicionais onde os programas podem ser mantidos e alguém pode enganar você, colocando seu próprio programa lá para você executar.

    Você pode modificar a variável PATH temporariamente usando

    export PATH="$PATH:/path/to/your/executable"
    

    (lembre-se do $PATH após = ), ou permanentemente adicionando a linha acima ao seu arquivo .bashrc (supondo que você use bash ).

por 08.08.2011 / 09:56