Agradecemos antecipadamente por qualquer conselho
Estou trabalhando em um comando fswatch para iniciar um script quando os arquivos atingem a pasta Downloads.
fswatch --event Created Downloads/ | (while read x; do echo $x | xargs -0 bash ./dlsort.sh; done)
O script está funcionando conforme o esperado. O problema que estou tendo é (eu espero) vindo do (enquanto lê x; bit:
O problema é que o dlsort.sh está sendo chamado duas vezes para cada download. Como a primeira execução do script move o arquivo, estou recebendo um erro "Nenhum arquivo ou diretório" na segunda execução. Não é um grande problema, já que o arquivo faz com que seja para onde deveria ir, mas eu estou trabalhando principalmente neste projeto para me ensinar mais sobre o bash / scripting, então eu gostaria de descobrir o que estou entendendo mal sobre isso comando.
EDIT: adicionando o dlsort.sh
if (echo "" | grep -q '\.jpg$'); then
mv "" Desktop/targdir/
else
mv "" Downloads/
fi
Tags command-line bash scripts xargs