Olá Júlio! Sou eu mesmo!!!!
Veja só, o erro aparece antes, ele não consegue executar o "ls -lh * | awk {'print $6" "$7'}", retornando que não consegue executar o print entre {}. Aparentemente é um problema de sintaxe mesmo. Estava inscrito no seu curso aqui em BH, mas não pude comparecer por sobrecarga aqui no setor. Ô arrependimento ... 2008/12/19 Julio C. Neves <julio.ne...@gmail.com>: > chinabhz me parece uma regexp para o China de BH que sabe tudo de EAD. > Espero que seja, pois assim estou ajudando uma pessoa que admiro. > > Seguinte: a sintaxe do convert é: > convert input-file [options] output-file > e eu não vi o tal do output file no seu script. > > Suponha que o seu loop, em um determinado momento atribuiu FOTO à sua > variável $img. Entendi que qdo colocou a variável $imgdatada, vc queria que > a foto convertida se chamasse FOTOdatada. Se é isso, o erro está aí e basta > vc trocar $imgdatada por ${img}datada. > > Onde as chaves servem para limitar o escopo da variável. O que o shell fez > foi substituir a sua variável por nulo, pois a variável $imgdatada não > estava definida. > > Se não consegui te ajudar e vc é o China que estou pensando, me ligue até às > 15:00h (#21 4861). > -- > Abração, > Julio > *Cursos de Shell e Zenity nos finais de semana: > - Em SP ligue (11) 2125-4747; > - Em DF ligue (61) 3223-3000; > - Turmas fechadas em outras cidades ligue (21) 8112-9988* > > 2008/12/19 chinabhz <china.lis...@gmail.com> > >> Caros; >> Tenho uma câmera digital que não tem a função de gravar a data nas >> fotos (sic)! >> Daí me surgiu a idéia de criar um script que pega a data do arquivo da >> foto e a escreve no arquivo. Não tenho conhecimento suficiente para >> concluir a tarefa, por isso peço ajuda de vocês. >> >> O que já consegui: >> 1) Usando o ls+awk consegui ler a pasta onde estão as fotos e retornar >> apenas a data e hora de cada um >> ls -lh * | awk {'print $6" "$7'} >> >> 2) usando o convert, do imagemagik, consegui gravar a data na foto em >> UMA foto: >> >> convert -font helvetica -fill white -stroke black -pointsize 12 -draw >> 'text 2200,1900 "datadafoto"' -stroke none -draw 'text 2200,1900 >> "datadafoto"' foto.jpg fotodatada.jpg >> >> O que preciso: que o scritp leia o diretório de fotos e corte apenas a >> data e hora e passe como variavel para o convert fazer a datagem de >> todas de uma vez, sendo que na linha de comando onde está foto.jpg >> ficaria a variável que seria cada data de cada foto. >> >> Como minha câmera é muito comum, acredito que esse script seja de >> interesse geral ... Tem como fazer?? >> >> O que já fiz e não deu certo foi: >> >> #!/bin/bash >> $fotos="ls -lh * | awk {'print $6" "$7'}" >> for img in $fotos; do >> convert -font helvetica -fill white -stroke black -pointsize 12 -draw >> 'text 2200,1900 "datadafoto"' -stroke none -draw 'text 2200,1900 >> "datadafoto"' $img $imgdatada >> >> >> > > [As partes desta mensagem que não continham texto foram removidas] > >