1
resposta

Script não funciona

Tentei fazer o script acompanhando a aula mas me deparei com erro. Acabei copiando o script do instrutor, mas o erro persiste.

#!/bin/bash

converte_imagem(){
    local caminho_imagem=$1
    local imagem_sem_extensao=$(ls $caminho_imagem | awk -F. '{ print $1 }')
    convert $imagem_sem_extensao.jpg $imagem_sem_extensao.png
}

varrer_diretorio(){
    cd $1
    for arquivo in *
    do
        local caminho_arquivo=$(find ~Downloads/imagens-novos-livros -name '$arquivo')
        if [ -d $caminho_arquivo ]
        then
            varrer_diretorio $caminho_arquivo
        else
            converte_imagem $caminho_arquivo
        fi
    done
}

varrer_diretorio ~/Downloads/imagens-novos-livros
if [ $? -eq 0 ]
then
    echo "Conversão realizada com sucesso"
else
    echo "Houve um problema na conversão"
fi

Recebo o seguinte erro diversas vezes: find: paths must precede expression: `de'

1 resposta

Olá Vinicius,

Estive analisando o código, poderia por favor tentar colocar as aspas duplas ao invés das simples?

find ~Downloads/imagens-novos-livros -name '$arquivo'

Para

find ~Downloads/imagens-novos-livros -name "$arquivo"

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software