Alterando a variável $ PATH

0

Eu usei isso para adicionar ao PATH:

APXS2=/usr/local/apache/bin/apxs PATH=$PATH:/usr/local/apache/bin passenger-install-apache2-module

e meu PATH agora se parece com isso:

/usr/local/jdk/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/courier-imap/sbin:/usr/lib/courier-imap/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin:

Agora quero remover isso que adicionei. Como fazer isso?

    
por dormitkon 23.02.2011 / 23:18

4 respostas

1

A melhor maneira é simplesmente armazenar uma cópia do caminho antes de alterá-lo.

PATH_BAK=$PATH
PATH=...
...
PATH=$PATH_BAK
    
por 23.02.2011 / 23:31
1

Basta fazer logout, fazer login novamente e seu PATH será redefinido.

    
por 23.02.2011 / 23:33
0

Se você esqueceu de criar um backup, pode usar a remoção / substituição de substring.

Remoção de Substring

${string#substring}

Substituição de Substring

${string/substring/replacement}

Por favor, consulte este link link

    
por 23.02.2011 / 23:40
0

Dado / usr / local / apache / bin não está no '... meu PATH agora se parece com isso ...' - o que você acha que adicionou? Assumindo que você está no bash ou no ksh - você não mudou o caminho porque você não o exportou. Então duvido que você precise remover alguma coisa.

Por exemplo,

$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ PATH=$PATH:/foo /bin/ls
aFile
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ # PATH did not alter

Versus:

$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ export PATH=$PATH:/foo
$ /bin/ls
aFile
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/foo
$ #PATH modified.

Então, a menos que você tenha exportado o novo PATH para o shell que está invocando, o comando do PATH não foi alterado.

    
por 24.02.2011 / 00:40

Tags