Antecedentes: Um dos meus colegas que não tem experiência com Linux me perguntou sobre o uso ./
antes de alguns comandos e não outros, então expliquei a ele como PATH
funciona e como os binários são escolhidos para serem executados. Sua resposta foi que era idiota e ele só queria não precisar digitar ./
antes dos comandos.
Pergunta: Existe uma maneira de modificar facilmente o comportamento do shell para que $PWD
seja sempre o primeiro item ativado PATH
?
~/bin
e torná-los partePATH
? Isso mantém as coisas organizadas também.PATH
(que é a fonte usual de tais considerações).Respostas:
Se você realmente deseja, pode fazer isso anexando
.
seu caminho:No entanto, isso é uma péssima idéia, porque significa que seu shell selecionará qualquer comando no diretório atual, de preferência para outros. Se alguém (ou algum programa) soltar um
ls
comando malicioso em um diretório que você usa com frequência, você está com problemas ...fonte
.
no início o seuPATH
padrão para usuários normais (se eu criei o usuário com "sam" no HP-UX, pelo menos; não tenho certeza sobre o antigo SunOS). Posteriormente, esse padrão foi removido por motivos de segurança. Se você possui o.
último itemPATH
, ainda assim alguém pode esperar erros de digitação típicos./tmp/sl
@ Philippos , sim, como os infames scripts de brincadeiras para atingir usuários com esses PATHs. No Debian e derivados, instale osl
pacote para ter uma idéia de quantas vezes você digitasl
no lugar dels
../
quando você deseja chamar comandos no diretório atual. Ou, se seu diretório atual usual for/project/under/development/bin
, adicione- o ao seuPATH
. Isso resolve o caso de uso do desenvolvedor. Colocar.
no início do seuPATH
é uma má idéia, ponto final.Embora essa não seja uma resposta direta à sua pergunta, a melhor prática seria criar um
bin
diretório no seu diretório pessoal como/home/user/bin
:Coloque seus scripts pessoais lá. A
PATH
seria atravessado na ordem que você definir e executar seus scripts pessoais sem o.
necessário.fonte
Você precisa ter o. no início da sua variável PATH:
fonte