Achei que isso resolveria o problema:
find src -type f -regextype egrep -regex '.*(?<!\.d)\.ts'
Mas parece que não combina com nada.
Acho que isso deve funcionar, mas acho que esse sabor "egrep" não suporta referências anteriores negativas, a menos que eu não tenha escapado de algo corretamente.
Para referência,
% find src -type f
src/code-frame.d.ts # <-- I want to filter this out
src/foo.ts
src/index.ts
Existe outra maneira rápida de filtrar .d.ts
arquivos dos meus resultados de pesquisa?
% find --version
find (GNU findutils) 4.7.0-git
Eu não acredito
egrep
que suporte essa sintaxe (sua expressão é uma expressão regular compatível com Perl). Mas você não precisa usar expressões regulares em seu exemplo, apenas faça vários-name
testes e aplique uma!
negação conforme apropriado:Você pode obter o resultado desejado filtrando apenas os nomes dos arquivos, negando o teste para os arquivos que não deseja:
Uma abordagem simples (talvez menos eficiente) pode ser filtrar a string não quero.