Como remover um caminho de diretório do PATH permanentemente?

0

Estou usando o Ubuntu 16.04 LTS. Eu sou muito novo no Linux.

Eu criei um diretório softwares dentro do Downloads dir para todo o software e o adicionei ao meu PATH. Então fui avisado que é melhor criar um diretório bin em sua casa, em vez de manter diretórios como Downloads no PATH. Então eu fiz isso. Agora, meu problema, eu tenho os dois diretórios no PATH e algumas das minhas ferramentas não estão funcionando por esse motivo.

Eu tentei algumas das sugestões dadas nos posts aqui, mas não funcionou para mim e, como sou novo, tenho um pouco de medo de experimentar que vou estragar tudo.

Meu PATH

$ echo $PATH 
/home/gjjha/bin:/home/gjjha/bin:/home/gjjha/bin:/home/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin:/home/gjjha/bin:/home/gjjha/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin://home/gjjha/Downloads/softwares/ncbi-blast-2.5.0+:/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin:/home/gjjha/home/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin:/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin:/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin:/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin:/gjjha/Downloads/softwares/bowtie2-2.2.9/index:/home/gjjha/Downloads/softwares/tophat-2.1.1:/gjjha/Downloads/softwares/bowtie2-2.2.9/index:/home/gjjha/gjjha/Downloads/softwares/bowtie2-2.2.9/index:/home/gjjha/Downloads/softwares/tophat-2.1.1:/home/gjjha/bin:/home/gjjha/bin/blastdb:/home/gjjha/bin/blast+2.5:/home/gjjha/blast+2.5/bin:/home/gjjha/blast+2.5/bin:/home/gjjha/bin/ncbi-blast-2.5.0+/bin

Eu quero remover o diretório de softwares e duplicatas e quero manter /home/gjjha/bin , já que todos os softwares estão em bin dir agora.

Comandos que experimentei:

PATH=echo $PATH | sed -e 's/:\/home\/wrong\/dir\/$//'
PATH= echo $PATH | sed -e 's/:/home/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin/$//'
PATH=${PATH/%:/home/wrong/dir//}
PATH=${PATH%:/home/gjjha/Downloads/softwares//}
PATH=${PATH%:/home/gjjha/Downloads/softwares/ncbi-blast-2.5.0+/bin/}

Eu verifiquei (mesmo após a reinicialização), o diretório de softwares ainda está lá.

    
por Neels 12.03.2017 / 11:24

1 resposta

2

Na minha instalação vanilla de 16.04, a variável PATH é definida de .profile para shells de login

Primeiro, salve seu PATH atual em um arquivo de texto:

echo $PATH > currentpath.txt

Acho mais fácil abrir um novo shell e fazer

sudo vi .profile

agora edite ou adicione a linha para definir o caminho correto

PATH="..."

com o caminho que você deseja dentro das aspas.

O caminho padrão:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

(E funciona da esquerda para a direita - se existir um executável com o mesmo nome em /usr/local/sbin e /usr/bin , a versão em /usr/local/sbin será chamada quando você digitar o nome)

Pressione esc e w rite e q uit com

:wq

Se você não souber vi , poderá usar nano para editar o arquivo .profile . Pode ser mais fácil.

Reinicie.

Eu fiz isso para que minha pasta bin local estivesse no caminho dos executáveis. Não sei por que não era por padrão, mas ei.

    
por totalnoob 12.03.2017 / 11:41