Boa tarde,
Alguém poderia me ajudar com o erro do código?
Código => https://prnt.sc/i5iihd Erro => https://prnt.sc/i5iiy7
Muito obrigado
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa tarde,
Alguém poderia me ajudar com o erro do código?
Código => https://prnt.sc/i5iihd Erro => https://prnt.sc/i5iiy7
Muito obrigado
Olá Guilherme,
Pelo que pude verificar, o problema seria no if. É necessário ter um espaço entre o if e a informação dentro dos colchetes, exemplo:
if [(espaço) informação (espaço)]
Abs
Rafael, realmente faltavam os espaços, porém corrgi isso, mas o código ainda apresenta o mesmo erro. O que eu posso fazer?
Olá Guilherme,
Poderia por favor postar o código aqui para que eu possa analisar em mais detalhes?
Sim, sem problemas, tive problemas para mandar o código diretamente antes pois estou usando uma máquina virtual. Segue o código
#!/bin/bash
converte_imagem(){
cd ~/Downloads/imagens-livros
if [ ! -d png ] then
mkdir png
fi
for imagem in *.jpg
do
local imagem_sem_extensao = $(ls imagem | awk -F. '{ print $1 }')
convert $imagem_sem_extensao.jpg png/$imagem_sem_extensao.png
done
}
converte_imagem
if[ $? -eq 0] then
echo "Conversão realizada com sucesso"
else
echo "Houve um erro na conversão"
fi
Olá Guilherme, tudo bem?
Estive analisando seu código, vou colocar abaixo os pontos:
; após o if para que a sintaxe fique correta local imagem_sem_extensao = $(ls imagem | awk -F. '{ print $1 }')
Não podemos ter espaços entre o =, a variável e o conteúdo, do lado direito da igualdade devemos ter o conteúdo da variável imagem $imagem
if[ $? -eq 0] then
Temos aquela mesma questão de colocar o ;depois do if e precisamos colocar um espaço entre o 0 e o colchete. Estou colocando abaixo o código com as correções:
#!/bin/bash
converte_imagem(){
cd ~/Downloads/imagens-livros
if [ ! -d png ]; then
mkdir png
fi
for imagem in *.jpg
do
local imagem_sem_extensao=$(ls $imagem | awk -F. '{ print $1 }')
convert $imagem_sem_extensao.jpg png/$imagem_sem_extensao.png
done
}
converte_imagem
if [ $? -eq 0 ]; then
echo "Conversão realizada com sucesso"
else
echo "Houve um erro na conversão"
fi
Abs
Muito obrigado Rafael;