Acabei criando um script para resolver o meu problema. Isso não é exatamente uma solução de backup, mas funciona para mim.
#!/bin/bash
folderToBeUpdated=~/folderToInsertIconsRecursively
iconsFolder=~/.icons;
file=$(mktemp)
ls -R $folderToBeUpdated | awk '
/:$/&&f{s=$0;f=0}
/:$/&&!f{sub(/:$/,"");s=$0;f=1;next}
NF&&f{ print s"/"$0 }' > $file
while IFS='' read -r line || [[ -n "$line" ]]; do
folderName=$(basename "${line}")
pathName=$(dirname "${line}")
if [ -f "$iconsFolder"/"$folderName".png ]
then
gvfs-set-attribute -t string "$pathName/$folderName" metadata::custom-icon "file://$iconsFolder/$folderName.png"
fi
done < $file
A ideia deste script é que precisamos fornecer o caminho de duas pastas:
- O caminho de uma pasta cheia de ícones (
iconsFolder
) - O caminho da pasta que queremos colocar ícones recursivamente (
folderToBeUpdated
)
O script irá verificar os ícones e as pastas com o mesmo nome e, em seguida, irá inserir ícones em pastas específicas, caso isso seja verdade , por exemplo, uma pasta dentro de folderToBeUpdated
é chamada example
e eu tenho um ícone chamado example.png
dentro do meu iconsFolder
, então o ícone example.png
será inserido como o ícone da pasta example
(se o nome não é o mesmo que o script não fará nada).
PS: É necessário pressionar F5
depois de executar o script para ver os ícones.
Esse é apenas um script funcional, mas é útil porque eu posso replicar meus ícones facilmente em computadores diferentes. De qualquer forma, se alguém souber uma maneira de fazer backups de ícones de uma maneira mais conveniente, sinta-se à vontade para escrever uma nova resposta ou dar sugestões nos comentários.