A coisa rabiscada é chamada de "til".
Expande para o seu diretório pessoal.
Tente
echo ~
echo $HOME
As duas declarações colocam o seu diretório pessoal sozinho em uma linha ..
Veja Expansão do Til do bash para detalhes.
Eu tenho duas instâncias sendo usadas e estou me perguntando o que cada uma delas faz:
service=~
mv ~/Desktop/Service$version.tgz $service
O que o pequeno ~
faz?
Então, depois disso, o que seria cd $service
?
A coisa rabiscada é chamada de "til".
Expande para o seu diretório pessoal.
Tente
echo ~
echo $HOME
As duas declarações colocam o seu diretório pessoal sozinho em uma linha ..
Veja Expansão do Til do bash para detalhes.
O "squiggly" é chamado de til. Ele é usado para se referir ao seu diretório home que, no Linux, é normalmente /home/username
. Ele também é armazenado na variável de ambiente $HOME
. Expandir o ~
para o local do diretório inicial é o trabalho do shell (como zsh ou bash) ou do gerenciador de arquivos (como o Nautilus) e não o sistema de arquivos ou o próprio SO.
Você também pode usar isso para se referir ao diretório pessoal de outro usuário. Por exemplo, se o nome de usuário do outro usuário for bob
, você poderá consultar seu diretório inicial com ~bob
, que será expandido para /home/bob/
.
O primeiro exemplo que você deu define a variável service
to ~
, então corresponde ao seu diretório home. Isso é equivalente a service=/home/username
ou service=$HOME
.
O segundo exemplo copia o arquivo ~/Desktop/Service$version.tgz
(ou /home/username/Desktop/Service$version.tgz
) para /home/username
. Este comando é equivalente a:
mv ~/Desktop/Service$version.tgz ~
ou
mv ~/Desktop/Service$version.tgz $HOME
ou
mv ~/Desktop/Service$version.tgz /home/username/
O terceiro alterará o diretório de trabalho atual ( $PWD
) para /home/username/
. Isso é equivalente a:
cd /home/username/
ou
cd $HOME
Em ambos os itens # 1 e amp; # 2: ~ é o seu diretório home, então se você é qwerty, provavelmente será o diretório / home / qwerty. Então, tente ls ~
para ver isso.
Para o número 1: parece que o serviço variável está sendo definido como seu diretório pessoal.
Isso significa que depois que o número 2 mover o arquivo tgz do subdiretório Desktop para o diretório inicial, o número 3 será alterado para o diretório inicial.
Parece que os comandos estão fazendo o seguinte.
Atribuir uma variável chamada serviço ao local da sua pasta pessoal, por exemplo:
/home/user
Move o arquivo da sua área de trabalho para o nível superior do seu diretório pessoal, por exemplo:
/home/user/Desktop/Service$version.tgz $service
O script altera o diretório para o nível superior do diretório inicial.
Assim, tudo o que o script está fazendo é apenas limpar sua área de trabalho, movendo o arquivo para a pasta /home/user
.
Eu adicionarei aqui que o ~ user também se expande para o diretório pessoal do [user], por isso não é apenas um atalho para o seu diretório pessoal próprio .
Por exemplo:
[guy@abox anotherdir]$ cd ~
[guy@abox ~]$ pwd
/home/guy
[guy@abox ~]$ cd ~john
[guy@abox john]$ pwd
/home/john
Tags command-line linux home-folder