Não entendi oq vc quer, mas
isso:
[ ! "$DATA" ] && DATA=0
pode ser substituido chamando usando essa construção:
$ data=
$ echo ${data:-0}
0
$ data=1
$ echo ${data:-0}
1
On Mon, Jan 25, 2016 at 4:48 PM 'Julio C. Neves' address@hidden
<mailto:address@hidden> [shell-script]
<address@hidden
<mailto:address@hidden>> wrote:
__
Não sei se é disso que vc está chiando, mas:
if [[ "$DATA" && "${DATA//-/}" -eq "$(date +%F | tr -d "-")" ]]
está errado. Aqui o cmd test ([[...]]) testa 2 cmd, que tem que ser
executado antes do test e vc está priorizando só um. Talvez funcione
se vc fizer:
[[ $([ -n "$DATA" ] && echo "${DATA//-/}") -eq "$(date +%F | tr -d
'-')" ]]
Não sei se é isso que vc quer, pq não entendi bem o enunciado e nem
sei o valor de ATUAL.
OBS: Cuidado com os nomes de variável em letras maiúsculas. $DATA é
uma variável de sistema em sistemas operacionais compatíveis com
SVr4. Por causa de coisas assim, não uso variáveis em maiúsculas e
desaconselho a todos usarem.
Abcs,
Julio
*@juliobash*
*
Próximos cursos de Shell*
*Cidade LocalPeríodo*
*Rio de Janeiro EDX <http://edx.srv.br/shell-script/>05-06/03**e
12-13/03 (Sábados e Domingos) *
*São Paulo 4Linux
<http://www.4linux.com.br/cursos/programacao-em-shell-script>11**/04**a
15/04 *
Dou treinamento de /Shell/em qualquer cidade.
Para mais detalhes, me mande um e-mail <mailto:address@hidden>.
Em 25 de janeiro de 2016 16:09, Herbert Fortes (hpfn) address@hidden
<mailto:address@hidden> [shell-script]
<address@hidden
<mailto:address@hidden>> escreveu:
__
Olá,
Parece que um script aqui não está funcionando
bem.
Quero comparar datas, mas se não houver data, não
interessa. Apenas defino um valor para não dar erro.
DATA=$(echo "$ATUAL" | cut -d" " -f1)
[ ! "$DATA" ] && DATA=0
if [[ "${DATA//-/}" -eq "$(date +%F | tr -d "-")" ]]
Não é possível fazer isso ?
DATA=$(echo "$ATUAL" | cut -d" " -f1)
if [[ "$DATA" && "${DATA//-/}" -eq "$(date +%F | tr -d "-")" ]]
abraço,
--
Herbert Parentes Fortes Neto (hpfn)