Esclarecimento sobre o caminho de atualização em bashrc

0

Estou seguindo um tutorial sobre como instalar o git em um anfitrião partilhado e precisa de algum esclarecimento, se possível.

Eu tenho acesso ao GCC

jpols@MrComputer ~
$ ssh nookdig1@***.***.**.*'gcc --version
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.'

e pode editar o arquivo bashrc:

jpols@MrComputer ~
$ vi .bashrc

No entanto, não entendo como ler se o caminho foi adicionado corretamente:

Update your $PATH None of this will work if you don’t update the $PATH environment variable. In most cases, this is set in .bashrc. Using .bashrc instead of .bash_profile updates $PATH for interactive and non-interactive sessions–which is necessary for remote Git commands. Edit .bashrc and add the following line:

export PATH=$HOME/bin:$PATH

Eu adicionei o arquivo acima ao arquivo e salvei, mas ele continua dizendo

Be sure ‘~/bin’ is at the beginning since $PATH is searched from left to right;

Mas ~ / bin é diferente do caminho dado. Alguém poderia explicar o que isso significa?

Depois de adicionar o caminho conforme especificado, a saída é:

jpols@MrComputer ~
$ source ~/.bashrc

jpols@MrComputer ~
$ echo $PATH
/home/jpols/bin:/usr/local/bin:/usr/bin:/cygdrive/c/Python27:/cygdrive/c/Python27/Scripts:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem:/cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0:/cygdrive/c/Program Files/nodejs:/cygdrive/c/Program Files/Git/cmd:GYP_MSVS_VERSION=2015:/cygdrive/c/WINDOWS/system32/config/systemprofile/.dnx/bin:/cygdrive/c/Program Files/Microsoft DNX/Dnvm:/cygdrive/c/Program Files/Microsoft SQL Server/130/Tools/Binn:/cygdrive/c/HashiCorp/Vagrant/bin:/cygdrive/c/MAMP/bin/php/php7.0.13:/cygdrive/c/ProgramData/ComposerSetup/bin:/cygdrive/c/Program Files (x86)/Yarn/bin:/cygdrive/c/Program Files/PuTTY:/cygdrive/c/Program Files (x86)/Brackets/command:/cygdrive/c/Program Files (x86)/Calibre2:/cygdrive/c/Ruby22-x64/bin:/cygdrive/c/Users/jpols/AppData/Local/Microsoft/WindowsApps:/cygdrive/c/Users/jpols/AppData/Roaming/npm:/cygdrive/c/Users/jpols/AppData/Roaming/Composer/vendor/bin:/cygdrive/c/Users/jpols/AppData/Local/Yarn/bin:/cygdrive/c/Program Files (x86)/Nmap

Apenas comparando a primeira parte:

Tutorial: /home/joe/bin:/usr/local/bin:/bin:/usr/bin

Meu: /home/jpols/bin:/usr/local/bin:/usr/bin:/

Eles são diferentes, então, antes de continuar, espero que alguém possa explicar o que estou tentando alcançar e como fazê-lo corretamente. Obrigado.

    
por JPB 12.07.2017 / 04:25

1 resposta

0

O caractere '~' é usado para indicar o diretório pessoal do usuário atual em sistemas UNIX. Como o nome de usuário em seu computador é diferente daquele na máquina usada no tutorial ao qual você se referiu, diferentes caminhos de diretório foram anexados à variável PATH. Ao usar '~', não é necessário inserir manualmente o nome de usuário para se referir ao diretório home do usuário, o que permitiu ao criador do tutorial criar código, o que faz com que a variável PATH examine ambos os diretórios pessoais, mesmo que ambos sistemas têm caminhos diferentes para seus diretórios home. (por exemplo, /home/joe/bin e /home/jpols/bin são diretórios diferentes, mas ~/bin pode ser usado para se referir a ambos, pois o '~' será expandido para o caminho correto pelo sistema)

    
por 12.07.2017 / 04:42