Suponha que um diretório contenha os seguintes arquivos:
- afile1
- afile2
- bfile
- cfile
- ffile
- ffile2
- qfile
- zfile
Estou procurando uma maneira fácil de selecionar todos os arquivos que começam com $ LETTER, ou comece com uma letra depois de $ LETTER no alfabeto. Uma solução que poderia ser facilmente modificada para encontrar arquivos que começam com $ LETTER ou arquivos que começam com uma letra anterior de $ LETTER no alfabeto seria útil.
Por exemplo Na lista acima, com LETTER = c, eu quero selecionar "cfile, ffile, ffile2, qfile, zfile"
O acima é um exemplo simplificado. No mundo real, o diretório conterá vários milhares de arquivos. No final, usei ls | tail -n${FUDGE_FACTOR}
, onde o fator fudge foi descoberto manualmente, mas estou procurando uma maneira de fazer isso automaticamente.
Estou procurando uma solução baseada em shell para isso (eu uso BASH, mas soluções em outros shells são bem-vindas). Estou ciente de que scripts de shell provavelmente não são a melhor ferramenta para esta tarefa, mas estou pedindo apenas interesse (para saber mais sobre shell scripts), então por favor não responda com as respostas em python / perl / lua / $ FAVE_SCRIPTING_LANGUAGE
Comentários gerais sobre as limitações dos scripts de shell para este tipo de tarefa, e a melhor maneira de contornar essas limitações na realidade (ou seja, sem a minha estipulação "deve ser uma solução baseada em shell"), seria bem-vinda.
Obrigado