Eu gostaria de poder determinar qual emblema um arquivo possui na linha de comando. Existe uma maneira de determinar isso? Além disso, existe uma maneira de aplicar emblemas na linha de comando?
Eu geralmente tenho um cron job que lixeira arquivos com mais de 7 dias em meus ~ / Downloads, mas eu gostaria de poder excluir apenas arquivos que não possuem um emblema em particular (minhas torrentes de semeadura). Eu tenho aplicado esses emblemas manualmente, mas se eu puder automatizar isso também, isso seria incrível.
Meu trabalho cron usual é apenas um simples comando de localização:
find /home/zach/Downloads/ -ctime +7 -exec trash {} \;
Editar:
Eu resolvi minha própria pergunta.
Bônus:
Para elaborar exatamente o que estou fazendo, uso deluge-torrent
para gerenciar meus downloads. Agora estou usando o plugin execute para executar este script em torrent completo:
#!/usr/bin/env bash
# deluge gives the download directory name as the third argument
gvfs-set-attribute -t stringv "" metadata::emblems ubuntuone-unsynchronized
Eu, então, criei meu trasher.sh
(isso requer o pacote trash-cli
):
#!/usr/bin/env bash
[[ "$(gvfs-info -a metadata::emblems $*)" =~ "ubuntuone-unsynchronized" ]] || trash "$*"
Agora, apenas modifico meu cron para:
find /home/zach/Downloads/ -maxdepth 1 -ctime +7 -exec /home/zach/Scripts/trasher.sh {} \;
E voila! Agora, o Deluge pode gerenciar seus downloads, enquanto meu script de limpeza pode limpar com segurança arquivos antigos sem interferir na propagação de torrents.