Encontrar pelo nome
O comando mais fácil que podemos usar para encontrar um arquivo é por um nome específico em um diretório. A vantagem deste comando é que o bash iráencontrar o arquivo mesmo se ele estiver presente em um dos diretórios recursivos dentro do caminho do diretório passado. Vejamos um exemplo:
encontrar Código -nome ifelse4.shEste comando irá encontrar o arquivo ifelse4.sh recursivamente dentro do código do diretório. Vamos ver a saída deste comando:
Encontrar arquivo por nome
A opção de nome mencionada acima diferencia maiúsculas de minúsculas. Se você quiser encontrar o arquivo independentemente da caixa no nome, use o seguinte comando: encontrar Código -iname ifelse4.sh
Encontrar um arquivo por expressão regular
Podemos usar expressões regulares simples para encontrar um arquivo em um diretório que corresponda a essa expressão regular. Vamos demonstrar isso com um comando simples para localizar todos os arquivos com qualquer nome e com uma extensão de .TXT:
encontrar código -regex ".* \.sh "Aqui está o que recebemos de volta com este comando:
Localizando arquivo por regex
Vamos entender o que este comando significa aqui:
- -regex: Isso apenas significa que vamos passar uma expressão regular a seguir.
- Na expressão regular, primeiro ponto (.) significa que qualquer número de caracteres no nome do arquivo deve corresponder.
- Em seguida, com o *, combinamos qualquer número de repetições de qualquer caractere (devido ao ponto).
- Finalmente, combinamos todos os arquivos com .extensão sh.
A coisa boa sobre uma expressão regular pode ser que ela pode ser tão flexível quanto você pode definir. Vamos modificar o exemplo acima para encontrar arquivos com .sh e .extensão txt também:
encontrar código -regex ".* \.sh | \.TXT"Encontrando arquivos modificados nos últimos n minutos
Encontrar um arquivo que foi modificado nos últimos n minutos também é fácil. Vejamos um exemplo imediatamente:
encontrar Código -mmin -90Vamos ver a saída deste comando:
Encontrando arquivo modificado nos últimos 90 minutos
Encontrando arquivos modificados nos últimos n dias
Encontrar um arquivo que foi modificado nos últimos n dias também é fácil. Vejamos um exemplo imediatamente:
encontrar o código -m tempo 0Aqui está o que recebemos de volta com este comando:
Encontrar arquivo por dias
Encontrar arquivos por permissões
Também é possível encontrar um arquivo com permissões específicas. Podemos encontrar arquivos que estão associados a um usuário ou grupo de usuários:
achar . -usuário shubhamAqui está o que recebemos de volta com este comando:
Encontrar arquivos pertencentes a um usuário
Também podemos aplicar a mesma lógica para encontrar arquivos pertencentes a um grupo de usuários: achar . -raiz do grupo
Encontrar arquivos por tamanho
Para localizar arquivos maiores do que o tamanho especificado, use o seguinte comando:
encontrar código -size +500Aqui está o que recebemos de volta com este comando:
Encontrar arquivo por tamanho
Além dos bytes, o tamanho de um arquivo pode ser mencionado como:
- b: blocos de 512 bytes: esta é a unidade padrão se nenhum for especificado
- c: bytes
- k: kilobytes
- M: megabytes
- G: gigabytes
Encontrar arquivos por tipo
É possível encontrar um arquivo com um tipo. Temos os seguintes tipos de comando find:
- d: diretório
- f: arquivo normal
- l: link simbólico
- b: bloco com buffer
- c: personagem sem buffer
- p: pipe nomeado
- s: socket
Vamos usar um comando para encontrar um arquivo normal:
achar . -tipo fAqui está o que recebemos de volta com este comando:
Encontre arquivos por tipo
Encontrar arquivos com várias condições
Como último exemplo, é possível encontrar arquivos anexando várias condições, como vimos acima. Vamos tentar várias condições em um único comando find agora:
achar . -tamanho + 1c -e -nome "*.sh "Aqui está o que recebemos de volta com este comando:
Encontre arquivos com várias condições
Conclusão
Nesta lição, vimos como podemos usar o comando find para encontrar quaisquer arquivos com algum nome ou por permissões ou por tipo. Podemos até acrescentar várias condições para encontrar arquivos que satisfaçam todas as condições. Brinque ainda mais com os comandos para financiar o poder de relacionamento.