degradação graciosa para globbing no terminal
-
22-09-2019 - |
Pergunta
Sempre que o Match Pattern falha, ele para todo o trabalho. Por exemplo,
$ mv *.jpg *.png folder1 && blahblah
mv: cannot stat `*.jpg': No such file or directory
*.png não é movido para a pasta1 e Blahblah não é executado.
E o script abaixo funciona apenas para o caso quando ambos. [AZ] * e * são bem -sucedidos.
#!/bin/bash
cd $1
du -sk .[A-z]* *| sort -rn | head
Como faço para que o globbing falhe graciosamente, na maioria das vezes exibindo avisos, mas nunca parando o emprego?
Solução
Em Bash, shopt -s nullglob
permitirá que um glob falhado se expanda para nada sem erros.
Outras dicas
Em seguida, use um loop. BEIJO
for files in jpg png
do
mv *.${files} /destination 2>/dev/null && do_something
done
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow