Defina a opção nullglob
:
shopt -s nullglob
Eu quero selecionar todos os arquivos em um diretório que termine com qualquer uma das seguintes extensões: txt
, java
, xml
, csv
Agora mesmo estou fazendo assim:
echo *.{txt,java,xml,csv}
O problema é que, se o diretório não contiver, digamos, um arquivo .java
, a saída será semelhante a:
f0030720.txt f0033510.txt f1028864.txt f1029056.txt f1068796.txt *.java f0905776.xml f1067014.csv f1067046.csv f1067056.csv f1067074.csv
Esse *.java
item cria problemas se eu usar mv
, tar
ou qualquer coisa assim, pois não é realmente um arquivo. Existe alguma maneira de eu ignorar qualquer globs que realmente não correspondem a um arquivo?