De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 7 de março de 2023
O comando find
é uma ferramenta muito poderosa do Linux para buscar arquivos
e diretórios em um sistema de arquivos. Ele também oferece a possibilidade de
utilizar expressões regulares para tornar as buscas ainda mais precisas. As
expressões regulares são padrões de texto que nos permitem buscar por
determinados caracteres, palavras ou padrões em um texto.
Para utilizar expressões regulares com o comando find
, basta utilizar
o parâmetro -regex
seguido do padrão que deseja ser encontrado. Existem
diversas formas de criar padrões de expressões regulares, mas abaixo estão
alguns exemplos básicos:
1. Buscar por arquivos que comecem com a letra a
:
$ find /caminho/para/o/diretorio -regex ".*/a.*"
2. Buscar por arquivos que terminem com a extensão .txt
:
$ find /caminho/para/o/diretorio -regex ".*\.txt"
3. Buscar por arquivos que contenham a palavra exemplo
no nome:
$ find /caminho/para/o/diretorio -regex ".*exemplo.*"
4. Buscar por arquivos que comecem com a letra a
e terminem com a extensão .txt
:
$ find /caminho/para/o/diretorio -regex ".*/a.*\.txt"
5. Buscar por arquivos que tenham extensão .txt
ou .csv
:
$ find /caminho/para/o/diretorio -regex ".*\.\(txt\|csv\)"
6. Buscar por arquivos que tenham um nome com três dígitos numéricos:
$ find /caminho/para/o/diretorio -regextype sed -regex ".*[0-9]\{3\}.*"
A opção regextype
do find
é utilizada para especificar o tipo de
expressão regular que será usada para buscar um padrão em uma string. Existem
vários tipos de expressões regulares, cada uma com sua própria sintaxe
e funcionalidade.
A opção regextype
aceita diferentes valores, dependendo do tipo de
expressão regular que você deseja usar. Por exemplo, se você deseja usar
a sintaxe de expressão regular POSIX, pode passar o valor posix
para a
opção regextype
.
Alguns dos valores possíveis para a opção regextype
incluem posix
,
perl
, basic
, extended
e emacs
. Cada um desses valores
representa um tipo de sintaxe de expressão regular diferente.
Dependendo da sintaxe de expressão regular que você escolher, pode ser necessário adaptar o padrão de busca para que ele seja compatível com a sintaxe escolhida.
As expressões regulares são sensíveis a maiúsculas e minúsculas, então
é importante usar a opção -iregex
para realizar buscas ignorando a
diferenciação de maiúsculas e minúsculas.
Uma última recomendação, tenha cuidado ao utilizar expressões regulares muito complexas, pois podem tornar o processo de busca muito lento e consumir muitos recursos do sistema. Sempre teste suas expressões regulares antes de utilizá-las em produção.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários