Cite duas vezes suas variáveis. Cite duas vezes suas variáveis. Cite duas vezes suas variáveis.
filename=$(date +'%d %b %Y') && tail -n1 "$filename"
Estou criando um arquivo de log do kermit com o nome da data atual (que está no formato de DD MMM YYYY - que não pode ser alterado AFAIK) e usando o nome do arquivo como a data de hoje.
Eu, então, tenho um script Bash para ler o arquivo e quero tail -n1
do arquivo.
se eu fizer
filename=$(date +%d\ %b\ %Y) && echo $filename
Eu obtenho
23 Feb 2015
que é o que eu quero e espero. No entanto, se eu fizer
filename=$(date +%d\ %b\ %Y) && tail -n1 $filename
Eu obtenho
tail: cannot open '23' for reading: No such file or directory
tail: cannot open 'Feb' for reading: No such file or directory
tail: cannot open '2015' for reading: No such file or directory
Eu não tenho certeza do que está causando isso, provavelmente do jeito que eu tenho formatado em string, eu acho, já que eu recebo o mesmo se eu usar tail
ou cat
?
Tenho certeza de que isso vai ser fácil para alguém, mas não consigo me acostumar com isso!
Alguém pode oferecer alguma ajuda, por favor?
Cite duas vezes suas variáveis. Cite duas vezes suas variáveis. Cite duas vezes suas variáveis.
filename=$(date +'%d %b %Y') && tail -n1 "$filename"
Tags command-line bash date tail