$HOME [RESOLVIDO]

1. $HOME [RESOLVIDO]

Victor
Saiko

(usa Ubuntu)

Enviado em 29/08/2018 - 15:10h

Alguém pode me explicar qual a função de $HOME, nesse script?

#!/bin/bash
clear
IP=$(wget -qO- ipv4.icanhazip.com)
link=
echo -e "\E[41;1;37m PAINEL v10 \E[0m"
echo ""
echo -ne "\033[1;32mInsira sua key\033[1;37m: "; read _key_
if [[ -z $_key_ ]]; then
echo ""
echo -e "\033[1;31mKey inválida\033[1;32m"
sleep 1
clear; exit
fi
wget http://$link/$_key_/inst > /dev/null 2>&1
sleep 1
if [[ -f $HOME/inst ]]; then
echo -e "\n\033[1;32mKey válida !\033[1;32m"
echo ""
sleep 2
echo -ne "\033[1;32mPARA CONTINUAR CONFIRME SEU IP: \033[1;37m"; read -e -i $IP ipdovps
if [[ -z "$ipdovps" ]];then
echo ""
echo -e "\033[1;31mIP inválido\033[1;32m"
sleep 1
clear; exit
fi
source $HOME/inst
else
echo -e "\n\033[1;31mKey inválida !\033[0m"
rm install > /dev/null 2>&1
sleep 2
clear; exit
fi


  


2. Re: $HOME [RESOLVIDO]

Daniel Lara Souza
danniel-lara

(usa Fedora)

Enviado em 29/08/2018 - 15:20h


$HOME

é o mesmo

/home/seuusuario




3. Re: $HOME [RESOLVIDO]

Victor
Saiko

(usa Ubuntu)

Enviado em 29/08/2018 - 15:27h

danniel-lara escreveu:


$HOME

é o mesmo

/home/seuusuario



Entendi, estava achando que era o mesmo que /home
Por isso não estava funfando direito
Valeu!


4. Re: $HOME [RESOLVIDO]

Slackjeff
slackjeff

(usa Slackware)

Enviado em 29/08/2018 - 21:32h

É uma variável de ambiente que expandida vira /home/USUARIO
Você poder ver as variáveis de ambiente com o comando env ou printenv


THE MAGIC SHELL PROGRAMMER.

Slackware user since ~2008
Meu canal no youtube:
https://www.youtube.com/SlackJeff

Meu Site:
http://www.slackjeff.com.br/

Meus Programas estão aqui:
https://notabug.org/jeffersonrocha

Meu PODCAST:
http://podcast.slackjeff.com.br/







5. Re: $HOME

Paulo Bonfanti
pbonfanti

(usa Debian)

Enviado em 31/08/2018 - 08:38h

Saiko escreveu:

Alguém pode me explicar qual a função de $HOME, nesse script?

#!/bin/bash
clear
IP=$(wget -qO- ipv4.icanhazip.com)
link=
echo -e "\E[41;1;37m PAINEL v10 \E[0m"
echo ""
echo -ne "\033[1;32mInsira sua key\033[1;37m: "; read _key_
if [[ -z $_key_ ]]; then
echo ""
echo -e "\033[1;31mKey inválida\033[1;32m"
sleep 1
clear; exit
fi
wget http://$link/$_key_/inst > /dev/null 2>&1
sleep 1
if [[ -f $HOME/inst ]]; then
echo -e "\n\033[1;32mKey válida !\033[1;32m"
echo ""
sleep 2
echo -ne "\033[1;32mPARA CONTINUAR CONFIRME SEU IP: \033[1;37m"; read -e -i $IP ipdovps
if [[ -z "$ipdovps" ]];then
echo ""
echo -e "\033[1;31mIP inválido\033[1;32m"
sleep 1
clear; exit
fi
source $HOME/inst
else
echo -e "\n\033[1;31mKey inválida !\033[0m"
rm install > /dev/null 2>&1
sleep 2
clear; exit
fi


A varíavel $HOME se refere a pasta padrão do seu usuário normalmente definida quando você o cria.
Na linha :
if [[ -f $HOME/inst ]]; then
O script teste se na pasta home de seu usuário existe um arquivo comum chamado inst , se você está logado como root, será /root/inst , se estiver logado como joao , será provavelmente /home/joao/inst. Já na linha que tem:
source $HOME/inst
Ele roda os comandos definidos no arquivo inst que está dentro da sua pasta home, é comum que varíáveis de ambiente e comandos personalizados, sejam definidos em arquivos de configuração dentro da pasta home, por padrão o linux lê um arquivo .bashrc na pasta home de cada usuário quando ele loga, existindo o arquivo .bash_aliases no mesmo lugar, os comandos personalizados podem ser listados em separado de outras variáveis e comandos, eu uso esse método. Neste caso quando você chama o arquivo com source, ele vai carregar variáveis e executar os comandos imediatamente.



6. Re: $HOME

Victor
Saiko

(usa Ubuntu)

Enviado em 02/09/2018 - 20:03h

slackjeff escreveu:

É uma variável de ambiente que expandida vira /home/USUARIO
Você poder ver as variáveis de ambiente com o comando env ou printenv


THE MAGIC SHELL PROGRAMMER.

Slackware user since ~2008
Meu canal no youtube:
https://www.youtube.com/SlackJeff

Meu Site:
http://www.slackjeff.com.br/

Meus Programas estão aqui:
https://notabug.org/jeffersonrocha

Meu PODCAST:
http://podcast.slackjeff.com.br/






Eae jeff! Acompanho teu canal há um tempo já, valeu pela força!!




7. Re: $HOME [RESOLVIDO]

Victor
Saiko

(usa Ubuntu)

Enviado em 02/09/2018 - 20:12h

pbonfanti escreveu:

Saiko escreveu:

Alguém pode me explicar qual a função de $HOME, nesse script?

#!/bin/bash
clear
IP=$(wget -qO- ipv4.icanhazip.com)
link=
echo -e "\E[41;1;37m PAINEL v10 \E[0m"
echo ""
echo -ne "\033[1;32mInsira sua key\033[1;37m: "; read _key_
if [[ -z $_key_ ]]; then
echo ""
echo -e "\033[1;31mKey inválida\033[1;32m"
sleep 1
clear; exit
fi
wget http://$link/$_key_/inst > /dev/null 2>&1
sleep 1
if [[ -f $HOME/inst ]]; then
echo -e "\n\033[1;32mKey válida !\033[1;32m"
echo ""
sleep 2
echo -ne "\033[1;32mPARA CONTINUAR CONFIRME SEU IP: \033[1;37m"; read -e -i $IP ipdovps
if [[ -z "$ipdovps" ]];then
echo ""
echo -e "\033[1;31mIP inválido\033[1;32m"
sleep 1
clear; exit
fi
source $HOME/inst
else
echo -e "\n\033[1;31mKey inválida !\033[0m"
rm install > /dev/null 2>&1
sleep 2
clear; exit
fi


A varíavel $HOME se refere a pasta padrão do seu usuário normalmente definida quando você o cria.
Na linha :
if [[ -f $HOME/inst ]]; then
O script teste se na pasta home de seu usuário existe um arquivo comum chamado inst , se você está logado como root, será /root/inst , se estiver logado como joao , será provavelmente /home/joao/inst. Já na linha que tem:
source $HOME/inst
Ele roda os comandos definidos no arquivo inst que está dentro da sua pasta home, é comum que varíáveis de ambiente e comandos personalizados, sejam definidos em arquivos de configuração dentro da pasta home, por padrão o linux lê um arquivo .bashrc na pasta home de cada usuário quando ele loga, existindo o arquivo .bash_aliases no mesmo lugar, os comandos personalizados podem ser listados em separado de outras variáveis e comandos, eu uso esse método. Neste caso quando você chama o arquivo com source, ele vai carregar variáveis e executar os comandos imediatamente.


Olá amigo! Obrigado pela explicação, me ajudou bastante. Só não entendi muito bem a explicação do método que usa para chamar os comandos personalizados. Pode me explicar como isso funciona mais detalhadamente?


8. Re: $HOME [RESOLVIDO]

Matheus
pylm

(usa Gentoo)

Enviado em 02/09/2018 - 20:15h

Saiko escreveu:

pbonfanti escreveu:

Saiko escreveu:

Alguém pode me explicar qual a função de $HOME, nesse script?

#!/bin/bash
clear
IP=$(wget -qO- ipv4.icanhazip.com)
link=
echo -e "\E[41;1;37m PAINEL v10 \E[0m"
echo ""
echo -ne "\033[1;32mInsira sua key\033[1;37m: "; read _key_
if [[ -z $_key_ ]]; then
echo ""
echo -e "\033[1;31mKey inválida\033[1;32m"
sleep 1
clear; exit
fi
wget http://$link/$_key_/inst > /dev/null 2>&1
sleep 1
if [[ -f $HOME/inst ]]; then
echo -e "\n\033[1;32mKey válida !\033[1;32m"
echo ""
sleep 2
echo -ne "\033[1;32mPARA CONTINUAR CONFIRME SEU IP: \033[1;37m"; read -e -i $IP ipdovps
if [[ -z "$ipdovps" ]];then
echo ""
echo -e "\033[1;31mIP inválido\033[1;32m"
sleep 1
clear; exit
fi
source $HOME/inst
else
echo -e "\n\033[1;31mKey inválida !\033[0m"
rm install > /dev/null 2>&1
sleep 2
clear; exit
fi


A varíavel $HOME se refere a pasta padrão do seu usuário normalmente definida quando você o cria.
Na linha :
if [[ -f $HOME/inst ]]; then
O script teste se na pasta home de seu usuário existe um arquivo comum chamado inst , se você está logado como root, será /root/inst , se estiver logado como joao , será provavelmente /home/joao/inst. Já na linha que tem:
source $HOME/inst
Ele roda os comandos definidos no arquivo inst que está dentro da sua pasta home, é comum que varíáveis de ambiente e comandos personalizados, sejam definidos em arquivos de configuração dentro da pasta home, por padrão o linux lê um arquivo .bashrc na pasta home de cada usuário quando ele loga, existindo o arquivo .bash_aliases no mesmo lugar, os comandos personalizados podem ser listados em separado de outras variáveis e comandos, eu uso esse método. Neste caso quando você chama o arquivo com source, ele vai carregar variáveis e executar os comandos imediatamente.


Olá amigo! Obrigado pela explicação, me ajudou bastante. Só não entendi muito bem a explicação do método que usa para chamar os comandos personalizados. Pode me explicar como isso funciona mais detalhadamente?


No básico do básico:


alias ls='listar'


Se você adicionar isso no seu ~/.bashrc (ou bash_aliases) e atualizar ele (ou abrir um novo terminal), ao digitar "listar" vai ser executado o comando ls.


9. Re: $HOME [RESOLVIDO]

Victor
Saiko

(usa Ubuntu)

Enviado em 02/09/2018 - 20:34h

pylm escreveu:

Saiko escreveu:

pbonfanti escreveu:

Saiko escreveu:

Alguém pode me explicar qual a função de $HOME, nesse script?

#!/bin/bash
clear
IP=$(wget -qO- ipv4.icanhazip.com)
link=
echo -e "\E[41;1;37m PAINEL v10 \E[0m"
echo ""
echo -ne "\033[1;32mInsira sua key\033[1;37m: "; read _key_
if [[ -z $_key_ ]]; then
echo ""
echo -e "\033[1;31mKey inválida\033[1;32m"
sleep 1
clear; exit
fi
wget http://$link/$_key_/inst > /dev/null 2>&1
sleep 1
if [[ -f $HOME/inst ]]; then
echo -e "\n\033[1;32mKey válida !\033[1;32m"
echo ""
sleep 2
echo -ne "\033[1;32mPARA CONTINUAR CONFIRME SEU IP: \033[1;37m"; read -e -i $IP ipdovps
if [[ -z "$ipdovps" ]];then
echo ""
echo -e "\033[1;31mIP inválido\033[1;32m"
sleep 1
clear; exit
fi
source $HOME/inst
else
echo -e "\n\033[1;31mKey inválida !\033[0m"
rm install > /dev/null 2>&1
sleep 2
clear; exit
fi


A varíavel $HOME se refere a pasta padrão do seu usuário normalmente definida quando você o cria.
Na linha :
if [[ -f $HOME/inst ]]; then
O script teste se na pasta home de seu usuário existe um arquivo comum chamado inst , se você está logado como root, será /root/inst , se estiver logado como joao , será provavelmente /home/joao/inst. Já na linha que tem:
source $HOME/inst
Ele roda os comandos definidos no arquivo inst que está dentro da sua pasta home, é comum que varíáveis de ambiente e comandos personalizados, sejam definidos em arquivos de configuração dentro da pasta home, por padrão o linux lê um arquivo .bashrc na pasta home de cada usuário quando ele loga, existindo o arquivo .bash_aliases no mesmo lugar, os comandos personalizados podem ser listados em separado de outras variáveis e comandos, eu uso esse método. Neste caso quando você chama o arquivo com source, ele vai carregar variáveis e executar os comandos imediatamente.


Olá amigo! Obrigado pela explicação, me ajudou bastante. Só não entendi muito bem a explicação do método que usa para chamar os comandos personalizados. Pode me explicar como isso funciona mais detalhadamente?


No básico do básico:


alias ls='listar'


Se você adicionar isso no seu ~/.bashrc (ou bash_aliases) e atualizar ele (ou abrir um novo terminal), ao digitar "listar" vai ser executado o comando ls.


aah, interessante. Fiz algo com uma função exatamente igual a essa:

wget http://$link/$_key_/inst > /dev/null 2>&1
sleep 1
mv inst /bin/
if [[ -f /bin/inst ]]; then
echo -e "\n\033[1;32mKey válida !\033[1;32m"
echo ""
sleep 2
echo -ne "\033[1;32mPARA CONTINUAR CONFIRME SEU IP: \033[1;37m"; read -e -i $IP ipdovps
if [[ -z "$ipdovps" ]];then
echo ""
echo -e "\033[1;31mIP inválido\033[1;32m"
sleep 1
clear; exit
fi
source inst

Muito obrigado pela força!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts