Problema de Redirecionamento para variaves com a crase

1. Problema de Redirecionamento para variaves com a crase

Andre de Araujo
dedeboy2005

(usa Ubuntu)

Enviado em 25/12/2018 - 18:57h

Boa tarde galera! Feliz natal pra todos!
Estou aqui precisando de uma ajuda. Eu estou estudando Shell Script tem um parte que estou que redirecionar para variaveis, e o que acontece. Quando eu vou definir uma variavel ele não retorna um valor, por exemplo:
1 - Criei uma variavel retornando o valor da data;
#dia='date'
#$dia

Quando digito ele retorna esse valor até ai tudo bem.

Tue Dec 25 18:52:39 -02 2018

Mas quando eu vou colocar o comando "echo" para retornar uma saida por exemplo:
#echo "A data de hoje e: $dia"

Ele me retorna com esse valor:
#A data e: date

Na onde pode está o erro? Já pesquisei na internet e vi videos mas parece que o comando que digitei está correto. O que devo fazer neste caso:

Muito obrigado e aguardo respostas.

Abraços.




  


2. Re: Problema de Redirecionamento para variaves com a crase

lainion
lainion

(usa Void Linux)

Enviado em 25/12/2018 - 19:25h

põe em dois comando, assim:
echo -n "a data é: "; "$dia"



3. Re: Problema de Redirecionamento para variaves com a crase

Andre de Araujo
dedeboy2005

(usa Ubuntu)

Enviado em 26/12/2018 - 07:35h

Valeu amigo!!!!
Muito obrigado agora deu certo, vou anotar para não esquecer mais. :)
Valeu mesmo, que Deus te abençõe
Abraços.


4. Re: Problema de Redirecionamento para variaves com a crase

Perfil removido
removido

(usa Nenhuma)

Enviado em 26/12/2018 - 09:25h

dia=$(date)
echo "A data de hoje e: $dia"
A data de hoje e: qua dez 26 09:23:16 -02 2018 


dia=$(date +%d-%m-%Y)
echo "A data de hoje e: $dia"
A data de hoje e: 26-12-2018 



5. Re: Problema de Redirecionamento para variaves com a crase

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 26/12/2018 - 15:05h

Velho ... teu comando está entre aspas simples e não entre crase .. ve aí

mauricio@phantom ~ $ dia='date'
mauricio@phantom ~ $ echo "A data de hoje é: $dia"
A data de hoje é: date
mauricio@phantom ~ $ dia=`date`
mauricio@phantom ~ $ echo "A data de hoje é: $dia"
A data de hoje é: Qua Dez 26 15:04:29 -02 2018
mauricio@phantom ~ $


------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------



6. Re: Problema de Redirecionamento para variaves com a crase

Perfil removido
removido

(usa Nenhuma)

Enviado em 26/12/2018 - 15:10h

Ao usar crase, você está solicitando ao BASH que execute um comando. O uso de $() tem o mesmo efeito da crase, sem correr o risco de confundir com aspas.

Considero mais elegante utilizar $(command).

Mais detalhes:

$ man bash



7. Re: Problema de Redirecionamento para variaves com a crase

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 26/12/2018 - 18:45h


dedeboy2005 escreveu:

Boa tarde galera! Feliz natal pra todos!
Estou aqui precisando de uma ajuda. Eu estou estudando Shell Script tem um parte que estou que redirecionar para variaveis, e o que acontece. Quando eu vou definir uma variavel ele não retorna um valor, por exemplo:
1 - Criei uma variavel retornando o valor da data;
#dia='date'
#$dia

Quando digito ele retorna esse valor até ai tudo bem.

Tue Dec 25 18:52:39 -02 2018

Mas quando eu vou colocar o comando "echo" para retornar uma saida por exemplo:
#echo "A data de hoje e: $dia"

Ele me retorna com esse valor:
#A data e: date

Na onde pode está o erro? Já pesquisei na internet e vi videos mas parece que o comando que digitei está correto. O que devo fazer neste caso:

Muito obrigado e aguardo respostas.

Abraços.



Se usa a data somente uma vem, nem é necessário criar a var dia, faça:
echo -e "A data de Hoje é:\n$(date +%d:%m:%Y)"
A data de Hoje é:
26:12:2018

Marcelo Oliver






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts