Image Downloader: Baixando Imagens de Sites

󰃭 18 Nov 2025 (updated: 18 Nov 2025 )

Se tem uma coisa que eu estava frustrado era com a maneira em que eu guardava as minhas referências para usar futuramente. Era um processo muito chato, de ter que “etiquetar” as imagens, no formato de “artista-plataforma-ID”.

E salvava nesse formato para facilitar a busca da imagem original, pois assim eu teria o artista, a plataforma e o ID que aquela plataforma deu para o Post. Com isso, pensei num Script para facilitar esse trabalho.

O Princípio do Script

Em todo site, as imagens tem um link para salvamento; esse link nunca está tão amigável assim; e o link da postagem que todo mundo vê. A ideia é usar os dois links: O das imagens e o do post.

O Link das Imagens é usado, principalmente, para o curl baixar as imagens para o disco, e o do Post é usado, em via de regra, para montar o nome do arquivo. E é esse o princípio desse Script.

Começando pelo Básico

Além da Shebang, o Script começa com as variáveis. Inicialmente, são definidas três variáveis: tempImg, onde ficam os dados das imagens a serem tratadas, picFolder, que é basicamente onde fica a pasta de Imagens do Usuário e a idFolder, que é a pasta em que o Image Downloader irá baixar as imagens.

tempImg="/tmp/imagedownloader.txt"
picFolder="$(xdg-user-dir PICTURES)"
idFolder="$picFolder/ImageDownloader"

Com isso, vem a primeira função, que á e de Limpar as Varáveis. Isso é necessário para evitar erros no curl, pois pode ser que o Script seja executado sem dados, e com isso o curl dá erro.

clearVariables () {
	urlImage=""
	urlPost=""
	filename=""
	
	rm $tempImg
}

Exibindo o YAD e pegando as primeiras informações

A função principal começa chamando a função para limpar as variáveis, e depois exibe um diálogo do YAD pedindo para entrar com a URL da Imagem e do Post.

clearVariables
yad --title="Image Downloader" --text="Favor, entrar com detalhes" \
	--form --separator="\n" \
	--field="URL da Imagem" \
	--field="URL da Postagem" \
	--width=400 --center > $tempImg

Esse é o diálogo exibido:

Esse é o diálogo que começa o Script

Com isso, todas as informações são transferidas para o arquivo temporário, que está na variável $tempImg. Como esse arquivo tem uma linha em branco, é usado o comando sed -i '/^$/d' $tempImg para removê-las.

## Retirando Linhas Vazias do Arquivo
sed -i '/^$/d' $tempImg

## Definindo Variáveis
urlImage="$(head -n 1 $tempImg)"
urlPost="$(tail -n 1 $tempImg)"

E como são duas variáveis no arquivo, são usados os comandos head e tail para guardar, respectivamente, a primeira linha na variável urlImage e a última na urlPost.

Tratando a URL por Site

Cada Site tem uma maneira diferente de tratar como essas URLs funcionam. Mas uma coisa é certa: Dá pra extrair, ao menos, o ID e o Autor daquela imagem. Com isso, decidi suportar apenas cinco sites: Twitter/X, Bluesky, Pinterest, FurAffinity e DeviantART.

Twitter/X

Começando pelo Twitter, que foi uma das razões para eu ter feito esse Script. Como exemplo, está sendo usado essas URLs:

https://pbs.twimg.com/media/GjeGdV4W0AAyFcV?format=jpg&name=large
https://x.com/CantinhoDoRomeo/status/1890050798228267254/photo/1

Tudo começa com o if, onde é detectado que o Twitter é quem será tratado. Basicamente, é usado o echo para exibir a URL da Postagem, e é verificado se tem algum x.com naquela URL.

if ! [[ -z `echo $urlPost | grep "x.com"` ]]; then

Depois, é a hora de tratar o nome do Autor. Com isso, vem o comando cut1, que será usado várias vezes ao decorrer desse Script.

	author="$(echo $urlPost | cut -d '/' -f4)"

O que ocorre nesse comando?

  • echo $urlPost: Primeiro ele exibe a URL completa, ou seja o https://x.com/CantinhoDoRomeo/status/1890050798228267254/photo/1;
  • cut -d '/' -f4: Por fim, extrai o quarto campo. Ou seja, o CantinhoDoRomeo.

E isso é guardado na variável $author. Já temos uma das variáveis. Faltam duas. Para o $idImage, temos duas opções para o Twitter/X que temos que tratar. Uma delas, é o link da postagem no navegador, onde temos no final /photo/1 e um outra usando o botão de compartilhar, que tem o final ?s=20.

if [[ -z `echo $urlPost | grep "photo"` ]]; then
	idImage="$(echo $urlPost | cut -d '/' -f6 | cut -d"?" -f1)"
else
	idImage="$(echo $urlPost | cut -d '/' -f6)"
fi

O que ocorre com esse comando?

  • Primeiramente, verifica se não há um photo no comando. Se a condição for atendida:
    • echo $urlPost: Exibe a URL completa, ou seja o https://x.com/CantinhoDoRomeo/status/1890050798228267254?s=20;
    • cut -d '/' -f6: Extrai o sexto campo da URL, que seria o 1890050798228267254?s=20
    • cut -d"?" -f1: Corta o que há antes do ?. Ou seja, a variável fica 1890050798228267254. E isso é guardado na variável $idImage.
  • Se a condição não for atendida:
    • echo $urlPost: Exibe a URL completa, ou seja o https://x.com/CantinhoDoRomeo/status/1890050798228267254/photo/1;
    • cut -d '/' -f6: Extrai o sexto campo da URL, que seria o 1890050798228267254.

Com isso, a URL https://x.com/CantinhoDoRomeo/status/1890050798228267254/photo/1 se torna 1890050798228267254. Esse é o $idImage.

Porém, ainda precisamos ter o formato da imagem, para que a imagem seja salva corretamente. Ao contrário do $idImage e do $author, para a extensão do arquivo, precisamos da URL da Imagem, pois a extensão da imagem está lá. E esse é o trecho necessário pra isso:

fileExt="$(echo $urlImage | cut -d '/' -f5 | cut -d '&' -f1 | cut -d '=' -f2)"	

E o que esse comando faz? Vamos ao passo a passo:

  • echo $urlImage: Apenas exibe a URL. Ou seja, a URL ainda é https://pbs.twimg.com/media/GjeGdV4W0AAyFcV?format=jpg&name=large;
  • cut -d '/' -f5: Extrai o quinto campo da URL, usando o / como separador. Ou seja, é extraída a parte GjeGdV4W0AAyFcV?format=jpg&name=large da URL;
  • cut -d '&' -f1: Usando o & como delimitador, retira a parte final da URL, assim ficando GjeGdV4W0AAyFcV?format=jpg;
  • cut -d '=' -f2: por fim, é extraída a parte final do que restou, ou seja o jpg.

Assim, temos todas as peças para formar o nome do arquivo. Agora, é só juntar tudo em uma última variável:

filename="$author-Twitter-$idImage.$fileExt"

Assim, o nome do arquivo fica como CantinhoDoRomeo-Twitter-1890050798228267254.jpg.

Bluesky

Okay, o Bluesky não é uma Rede Social que eu gosto muito de usar, mas mesmo assim decidi dar suporte, pois tem alguns artistas que só estão por lá. Sendo assim, essas são as URLs de exemplo.

https://cdn.bsky.app/img/feed_fullsize/plain/did:plc:vkqbj2ogt6lap6hqire2gxo3/bafkreidedpz37pyj42kz4qeetoa37e3pnwomfkmoilulk5esy3yrsuj6xy@jpeg
https://bsky.app/profile/cantinhodoromeo.com.br/post/3l6t5m7bfrs2m

Como no caso do Twitter/X, é verificado se tem a URL do Bluesky, no caso, o bsky.app. É utilizando um elif, pois a cadeia de if já foi iniciada com o Twitter/X.

elif ! [[ -z `echo $urlPost | grep "bsky.app"` ]];then

Para o Autor do Post, o Bluesky utiliza um esquema um pouco diferente. Ele utiliza nomes de domínio. Mas nessa primeira versão, procurei extrair apenas o nome do usuário sem o domínio, e assim vem esse comando:

author="$(echo $urlPost | cut -d '/' -f5 | cut -d '.' -f1)"

E o que esse comando faz?

  • echo $urlPost: Exibe a URL completa, ou seja o https://bsky.app/profile/cantinhodoromeo.com.br/post/3l6t5m7bfrs2m;
  • cut -d '/' -f5: O quinto campo da URL é extraído usando o / como separador, ficando assim cantinhodoromeo.com.br;
  • cut -d '.' -f1: É extraído o primeiro campo, usando o . como separador. Ficando assim: cantinhodoromeo.

Assim, temos a variável $author. Ainda faltam duas. Para a variável $idImage é tudo bem simples, pois tem uma única forma de fazer as coisas, e é com esse comando que isso é feito:

idImage="$(echo $urlPost | cut -d '/' -f7)"

E o que esse comando faz?

  • echo $urlPost: Exibe a URL completa, ou seja o https://bsky.app/profile/cantinhodoromeo.com.br/post/3l6t5m7bfrs2m;
  • cut -d '/' -f5: O sétimo campo da URL é extraído usando o / como separador, ficando assim 3l6t5m7bfrs2m.

Com isso, temos a variável $idImage. Por agora, falta a extensão do arquivo. Para obter a extensão, é utilizado a URL da Imagem, ao invés do URL da Postagem, e a extração da extensão é feita com esse comando:

fileExt="$(echo $urlImage | cut -d '@' -f2)"

E isso é bem simples:

  • echo $urlImage exibe a URL completa, que nesse caso é a https://cdn.bsky.app/img/feed_fullsize/plain/did:plc:vkqbj2ogt6lap6hqire2gxo3/bafkreidedpz37pyj42kz4qeetoa37e3pnwomfkmoilulk5esy3yrsuj6xy@jpeg;
  • cut -d '@' -f2: Extrai a URL, que está no segundo campo usando o @ como delimitador.

Com isso, temos o Autor da Postagem, o ID e a extensão do arquivo. Assim é só juntar tudo numa única variável.

filename="$author-bsky-$idImage.$fileExt"

Assim, o nome do arquivo fica cantinhodoromeo-bsky-3l6t5m7bfrs2m.jpeg.

Pinterest

O Pinterest é um dos sites mais simples para salvar os arquivos, e de vez em quando uso ele para salvar algumas referências. Essas são as URLs de exemplo:

https://i.pinimg.com/736x/22/b5/72/22b572985dba27b9e0600ab9bd0e81fd.jpg
https://br.pinterest.com/pin/356136283051872115/

Assim como nos anteriores, tudo começa com a detecção do pinterest na URL que foi repassada para o Script.

elif ! [[ -z `echo $urlPost | grep "pinterest"` ]];then

Como no Pinterest, não há exatamente um autor da imagem e não há uma forma para extrair essa variável, então é extraído apenas o ID da Imagem, com esse comando:

idImage="$(echo $urlPost | cut -d '/' -f5)"

E o que ele faz?

  • echo $urlPost: Exibe a URL da Postagem, ou seja https://br.pinterest.com/pin/356136283051872115/;
  • cut -d '/' -f5: Extrai o quinto campo da URL, usando o / como delimitador. Ou seja, o 356136283051872115.

Como não há o autor da imagem no Pinterest, só falta extrair a extensão da imagem. Para isso, é usada a URL da Imagem, e é usado esse comando:

fileExt="$(echo $urlImage | cut -d '/' -f8 | cut -d '.' -f2)"

E o que ele faz?

  • echo $urlImage: Exibe a URL completa, ou seja, https://i.pinimg.com/736x/22/b5/72/22b572985dba27b9e0600ab9bd0e81fd.jpg;
  • cut -d '/' -f8: Extrai o oitavo campo da URL usando o / como delimitador, assim ficando o 22b572985dba27b9e0600ab9bd0e81fd.jpg;
  • cut -d '.' -f2: Por fim, extrai a extensão do arquivo, usando o . como delimitador. Ou seja, é extraído o jpg.

Com o ID e a Extensão, agora podemos juntar as partes com esse comando:

filename="pinterest-$idImage.$fileExt"

Assim, o nome do arquivo fica pinterest-356136283051872115.jpg.

FurAffinity

O FurAffinity é outro site que volta e meia eu salvo algumas coisas dele. E essas são as URLs de exemplo:

https://d.furaffinity.net/art/coelhoposa/1735863892/1735863892.coelhoposa_2025_01_-_primeiro_desenho_de_2025.jpg
https://www.furaffinity.net/view/59387664

Assim como nos anteriores, tudo começa com a detecção do furaffinity na URL que foi repassada para o Script.

elif ! [[ -z `echo $urlPost | grep "furaffinity"` ]];then

E uma coisa curiosa é que, ao contrário dos anteriores, o nome do Autor da imagem está na URL da Imagem, não da postagem. Sendo assim, foi usado esse comando para extrair o Autor:

author="$(echo $urlImage | cut -d '/' -f5)"

E o que esse comando faz?

  • echo $urlImage: Exibe toda a URL, ou seja o https://d.furaffinity.net/art/coelhoposa/1735863892/1735863892.coelhoposa_2025_01_-_primeiro_desenho_de_2025.jpg
  • cut -d '/' -f5: Extrai o quinto campo da URL usando o / como delimitador, ou seja o coelhoposa.

Assim, temos a variável $author. E faltam mais duas variáveis. Agora, para o ID da Imagem, usaremos a URL do Post.

idImage="$(echo $urlPost | cut -d '/' -f5)"

Assim como na variável anterior, mas usando a URL do Post no FurAffinity:

  • echo $urlImage: Exibe toda a URL, ou seja o https://www.furaffinity.net/view/59387664;
  • cut -d '/' -f5: Extrai o quinto campo da URL usando o / como delimitador, ou seja o 59387664.

Assim, temos a segunda variável, que é a $idImage. Ainda falta a extensão do Arquivo que, assim como a $author, é obtida usando a URL da Imagem. E é feita com esse comando:

fileExt="$(echo $urlImage | cut -d '/' -f7 | cut -d '.' -f3)"

E como esse comando funciona?

  • echo $urlImage: Exibe toda a URL, ou seja o https://d.furaffinity.net/art/coelhoposa/1735863892/1735863892.coelhoposa_2025_01_-_primeiro_desenho_de_2025.jpg;
  • cut -d '/' -f7: Extrai o sétimo campo da URL usando o / como delimitador, ou seja o 1735863892.coelhoposa_2025_01_-_primeiro_desenho_de_2025.jpg;
  • cut -d '.' -f3: Extrai o terceiro campo do que restou da URL usando o . como delimitador, assim restando apenas o jpg.

Sendo assim, resta juntar as três variáveis numa única, com esse comando:

filename="$author-FurAffinity-$idImage.$fileExt"

E assim, o nome do Arquivo fica coelhoposa-FurAffinity-59387664.jpg.

DeviantART

Por fim, o DeviantART. Apesar de estar apinhado de imagens geradas por Inteligência Artificial, ainda é um site útil para encontrar referências. As URLs de exemplo, são essas aqui:

https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/f/fb33f6af-ec27-4a6f-a37a-0712001e06f5/div8i9f-8f63c1c5-157f-4be1-b480-525c72e479eb.jpg/v1/fill/w_894,h_894,q_70,strp/2024_159___mocha_sendo_bem_fofinho_by_coelhoposa_div8i9f-pre.jpg?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1cm46YXBwOjdlMGQxODg5ODIyNjQzNzNhNWYwZDQxNWVhMGQyNmUwIiwiaXNzIjoidXJuOmFwcDo3ZTBkMTg4OTgyMjY0MzczYTVmMGQ0MTVlYTBkMjZlMCIsIm9iaiI6W1t7ImhlaWdodCI6Ijw9MjAwMCIsInBhdGgiOiIvZi9mYjMzZjZhZi1lYzI3LTRhNmYtYTM3YS0wNzEyMDAxZTA2ZjUvZGl2OGk5Zi04ZjYzYzFjNS0xNTdmLTRiZTEtYjQ4MC01MjVjNzJlNDc5ZWIuanBnIiwid2lkdGgiOiI8PTIwMDAifV1dLCJhdWQiOlsidXJuOnNlcnZpY2U6aW1hZ2Uub3BlcmF0aW9ucyJdfQ.fIHRG5I7QdhW9d-K7Tz3iOqTWFDGuaOOqiCkCMGTmDY
https://www.deviantart.com/coelhoposa/art/2024-159-Mocha-sendo-bem-fofinho-1140856179

Assim como nos anteriores, tudo começa com a detecção do deviantart na URL que foi repassada para o Script.

elif ! [[ -z `echo $urlPost | grep "deviantart"` ]];then

E assim, vamos para a extração das variáveis. Começando pela $author, que é extraída usando a URL da Postagem. É utilizado esse comando pra isso:

author="$(echo $urlPost | cut -d '/' -f4)"

Como esse comando funciona?

  • echo $urlPost: Primeiramente exibe toda a URL, ou seja https://www.deviantart.com/coelhoposa/art/2024-159-Mocha-sendo-bem-fofinho-1140856179;
  • cut -d '/' -f4: Extrai o quarto campo da URL usando o / como delimitador. Ou seja, o coelhoposa.

Assim, temos a variável de $author. Ainda faltam duas. Já para o ID da Imagem, também é usada a URL do Post, só que com outro campo, o que resulta nesse comando:

idImage="$(echo $urlPost | cut -d '/' -f6)"

Como esse comando funciona?

  • echo $urlPost: Primeiramente exibe toda a URL, ou seja https://www.deviantart.com/coelhoposa/art/2024-159-Mocha-sendo-bem-fofinho-1140856179;
  • cut -d '/' -f6: Extrai o sexto campo da URL usando o / como delimitador. Ou seja, o 2024-159-Mocha-sendo-bem-fofinho-1140856179.

Agora, falta apenas a extensão da imagem. Aqui é onde o filho chora e a mãe não vê, pois trataremos aquela URL enorme, que é a URL da Imagem.

fileExt="$(echo $urlImage | cut -d '/' -f10 | cut -d '.' -f2 | cut -d '?' -f1)"

Como esse comando funciona:

  • echo $urlImage: Exibe toda a URL, ou seja:
https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/f/fb33f6af-ec27-4a6f-a37a-0712001e06f5/div8i9f-8f63c1c5-157f-4be1-b480-525c72e479eb.jpg/v1/fill/w_894,h_894,q_70,strp/2024_159___mocha_sendo_bem_fofinho_by_coelhoposa_div8i9f-pre.jpg?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1cm46YXBwOjdlMGQxODg5ODIyNjQzNzNhNWYwZDQxNWVhMGQyNmUwIiwiaXNzIjoidXJuOmFwcDo3ZTBkMTg4OTgyMjY0MzczYTVmMGQ0MTVlYTBkMjZlMCIsIm9iaiI6W1t7ImhlaWdodCI6Ijw9MjAwMCIsInBhdGgiOiIvZi9mYjMzZjZhZi1lYzI3LTRhNmYtYTM3YS0wNzEyMDAxZTA2ZjUvZGl2OGk5Zi04ZjYzYzFjNS0xNTdmLTRiZTEtYjQ4MC01MjVjNzJlNDc5ZWIuanBnIiwid2lkdGgiOiI8PTIwMDAifV1dLCJhdWQiOlsidXJuOnNlcnZpY2U6aW1hZ2Uub3BlcmF0aW9ucyJdfQ.fIHRG5I7QdhW9d-K7Tz3iOqTWFDGuaOOqiCkCMGTmDY
  • cut -d '/' -f10: Extrai o décimo campo da URL usando o / como delimitador. Ou seja:
2024_159___mocha_sendo_bem_fofinho_by_coelhoposa_div8i9f-pre.jpg?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1cm46YXBwOjdlMGQxODg5ODIyNjQzNzNhNWYwZDQxNWVhMGQyNmUwIiwiaXNzIjoidXJuOmFwcDo3ZTBkMTg4OTgyMjY0MzczYTVmMGQ0MTVlYTBkMjZlMCIsIm9iaiI6W1t7ImhlaWdodCI6Ijw9MjAwMCIsInBhdGgiOiIvZi9mYjMzZjZhZi1lYzI3LTRhNmYtYTM3YS0wNzEyMDAxZTA2ZjUvZGl2OGk5Zi04ZjYzYzFjNS0xNTdmLTRiZTEtYjQ4MC01MjVjNzJlNDc5ZWIuanBnIiwid2lkdGgiOiI8PTIwMDAifV1dLCJhdWQiOlsidXJuOnNlcnZpY2U6aW1hZ2Uub3BlcmF0aW9ucyJdfQ.fIHRG5I7QdhW9d-K7Tz3iOqTWFDGuaOOqiCkCMGTmDY
  • cut -d '.' -f2: Extrai o segundo campo usando o . como delimitador. Ou seja, o jpg?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.
  • cut -d '?' -f1: Por fim, extrai o primeiro campo, usando o ? como delimitador. Ou seja, o jpg.

E como já temos o Autor, o ID da Imagem e a Extensão do Arquivo, juntaremos tudo numa única variável.

filename="$author-deviantArt_$idImage.$fileExt"

E o nome do Arquivo fica assim: coelhoposa-deviantArt_2024-159-Mocha-sendo-bem-fofinho-1140856179.jpg.

Baixando o arquivo

Bom, já temos tanto o nome do arquivo, como a URL para baixar ele. Sendo assim é executada uma verificação para ver se as duas variáveis estão vazias. E caso não estejam, o Download é feito usando o curl.

if ! [[ -z "$filename" && -z "$urlImage" ]]; then 
	echo -e "\n## Baixando $filename..."
	curl -o $idFolder/$filename $urlImage
fi

Depois que o Download é feito, o Script aguarda três segundos e chama outra função.

sleep 3
continue

E assim, fecha a função principal, que é a que baixa os arquivos.

Outro diálogo de confirmação

Talvez, poderia ter uma forma melhor de fazer isso, do Script continuar em Looping até que eu quisesse encerrar ele. Optei por fazer uma outra função que chama um diálogo para confirmar se quero ou não continuar a baixar outras imagens. E é algo bem simples:

continue () {
	yad --center -title="Image Downloader" \
    --image="dialog-question" \
    --text="Deseja Continuar?" \
    --button="Sim:0" \
    --button="Não:1"

	ret=$?

	if [[ $ret -eq 0 ]]; then
		downloadImage
	elif [[ $ret -eq 1 ]]; then
		exit
	else
		echo "O Image Downloader foi fechado."
	fi
}

Essa função começa exibindo um diálogo que pergunta se quero continuar ou não.

Diálogo para confirmar se o Loop irá continuar

E isso é feito pelo comando do yad.

yad --center -title="Image Downloader" \
    --image="dialog-question" \
    --text="Deseja Continuar?" \
    --button="Sim:0" \
    --button="Não:1"

Depois, captura a resposta do Diálogo com o ret=$? e joga numa cadeia de if.

if [[ $ret -eq 0 ]]; then
	downloadImage
elif [[ $ret -eq 1 ]]; then
	exit
else
	echo "O Image Downloader foi fechado."
fi

Basicamente, se for igual a 0, ele chama novamente a função que baixa os arquivos. Se for igual a 1 ou a qualquer outro número, o Script se encerra.

Resultado desse Script

Eu utilizei as imagens de exemplo para poder demonstrar como esse Script funciona, e aqui estão elas na pasta que o Script usa para baixar as imagens.

Essa é a pasta com as imagens que foram usadas de exemplo para demonstrar como esse Script funciona

E aqui é ele funcionando em vídeo:

Palavras Finais

Esse é um Script interessante que gostei de fazer. Já falei isso antes, mas adoro como eu consigo automatizar essas pequenas coisas no Linux. O Bash é realmente uma linguagem bem interessante e bem poderosa, e o que você consegue fazer, depende apenas do seu conhecimento dos comandos que podem ser usados.

Eu nunca vi ninguém fazendo isso, então decidi fazer eu mesmo. Talvez, eu possa expandir esse script para abrigar mais sites? Ou mesmo, deixar que ele possa ser expandido por arquivos externos, afinal temos o comando source que consegue carregar outros arquivos e as suas funções? É algo a se pensar e que gosto muito disso.

E talvez, eu possa colocar esse Script simples no Github, para que outras pessoas possam usar ele. Eu acho uma boa ideia, afinal, outras pessoas podem precisar organizar as imagens baixadas de alguma forma.


  1. O comando cut é composto por dois argumentos: o -d, é o delimitador, ou seja, o caractere que está separando o que está sendo cortado, já o -f é o campo que será extraído. ↩︎