Encontrar um arquivo no linux

Encontrar um arquivo em um sistema Linux pode ser complicado se você não souber como fazê-lo. A melhor maneira de encontrar arquivos é usando vários comandos de terminal diferentes. Dominar esses comandos pode colocar você no controle total de seus arquivos, e eles são muito mais poderosos do que as funções de pesquisa simples de outros sistemas operacionais.

Degraus

Método 1 de 3: Usando "achar"

Imagem intitulada 690519 1
1. Pesquisar um arquivo pelo nome do arquivo. Esta é a pesquisa mais simples que você pode realizar com o achar-comando. O comando abaixo irá pesquisar o diretório atual e todos os subdiretórios de acordo com a consulta.
encontre -iname "nome do arquivo"
  • Uso -ingestão em vez de -nome ignorar letras maiúsculas. Isto -nome-comando diferencia maiúsculas de minúsculas.
Imagem intitulada 690519 2
2. Configurar uma pesquisa para pesquisar o diretório raiz. Se você deseja pesquisar todo o sistema, pode usar o parâmetro / adicionar à pesquisa. Com isso você pergunta achar para pesquisar todos os diretórios, começando na raiz.
encontrar / -nome "nome do arquivo"
  • Você pode iniciar a pesquisa em um diretório específico / substitua por um caminho de diretório, como /home/pat.
  • Você pode . usar, em vez de /, para forçar a pesquisa a ser realizada apenas no diretório e subdiretórios atuais.
    Imagem intitulada 690519 3
    3. Use o curinga .*para procurar qualquer coisa que corresponda a qualquer parte da consulta. o piadista * pode ser útil para encontrar algo, se você não se lembrar do nome completo ou se quiser encontrar tudo com uma determinada extensão.
    encontre /home/peter -iname "*.conf"
  • Isso retorna tudo .conf no diretório de usuário de Peter (e subdiretórios).
  • Você também pode usá-lo para encontrar qualquer coisa que corresponda a parte do nome do arquivo. Por exemplo, se você tiver muitos documentos relacionados ao wikiHow, poderá encontrá-los digitando "*wiki*".
    Imagem intitulada 690519 4
  • 4. Torne seus resultados de pesquisa mais fáceis de gerenciar. Se você obtiver muitos resultados de pesquisa, pode ser difícil percorrer. Use o sinal | e encaminhar os resultados da pesquisa para o "a partir de"-programa de filtro. Isso pode tornar a rolagem e a filtragem dos resultados muito mais fáceis.
    encontre /home/pat -iname "*.conf" | menos
    Imagem intitulada 690519 5
    5. Encontre tipos específicos de resultados. Você pode usar parâmetros para mostrar apenas determinados resultados. Você pode procurar por arquivos regulares (f), diretório` (d), links simbólicos (eu), dispositivos de caracteres (c) e bloquear dispositivos (b), usando o parâmetro apropriado.
    localizar / -type f -iname "nome do arquivo"
    Imagem intitulada 690519 6
    6. Filtre os resultados da pesquisa por tamanho. Se você tiver muitos arquivos com nomes semelhantes, mas souber o tamanho aproximado do arquivo, poderá reduzir os resultados filtrando por tamanho.
    find / -size +50M -iname "nome do arquivo"
  • Isso retorna resultados sobre arquivos maiores que 50 megabytes. Você pode+ ou - use para procurar arquivos mais ou menos grandes. deixar você + ou - longe, então ele começará a procurar por arquivos de exatamente o tamanho especificado.
  • Você pode filtrar por bytes (c), kilobytes (k), megabytes (m), gigabytes (G) ou blocos de 512 bytes (b). Observe que o sinalizador de tamanho diferencia maiúsculas de minúsculas.
    Imagem intitulada 690519 7
    7. Use operadores lógicos para combinar diferentes filtros de pesquisa. Você pode usar o -e, -ou e -não operadores, para combinar diferentes tipos de pesquisas ao mesmo tempo.
    find /reisfotos -type f -size +200k -not -iname "*2015*"
    O comando encontrará arquivos na pasta "fotos de viagem" que são maiores que 200 kilobytes, mas sem "2015" no nome do arquivo.
    Imagem intitulada 690519 8
    8. Pesquisar arquivos por proprietário ou permissões. Se você estiver procurando por um arquivo específico de propriedade de um usuário ou arquivos com permissões específicas, poderá restringir ainda mais a pesquisa.
    find / -user pat -iname "nome do arquivo" encontrar / -grupo de usuários -iname "nome do arquivo" localizar / -perm 777 -iname "nome do arquivo"
    Pesquise os exemplos acima para usuários, grupos ou permissões específicos. Você também pode omitir o nome do arquivo para retornar todos os arquivos que correspondem a esse tipo. Por exemplo, encontrar / -perm 777 retorna todos os arquivos com 777 permissões (sem restrições).
    Imagem intitulada 690519 9
    9. Combine comandos para executar ações quando os arquivos são encontrados. Você pode usar o comando achar combine com outros comandos para poder executá-los nos arquivos resultantes da consulta. Separe o comando achar e o segundo comando com o -executivo-sinalizar e terminar a linha com {};
    achar . -digite f -perm 777 -exec chmod 755 {} ;
    Pesquisa o diretório atual (e todos os subdiretórios) para arquivos com 777 permissões. Depois disso fica chmod-comando usado para alterar as permissões para 755.

    Método 2 de 3: Usando "localizar"

    Imagem intitulada 690519 10
    1. Instale o .localizar-função. O comando localizar geralmente funciona muito mais rápido do que achar, porque usa um banco de dados da sua estrutura de arquivos. Nem todas as distribuições do Linux incluem esse recurso por padrão, portanto, digite os seguintes comandos para instalá-lo, se puder:
  • modelo sudo apt-get update e pressione ↵ Entrar.
  • Você pode instalá-lo no Debian e no Ubuntu, da seguinte forma: Digite sudo apt-get install mlocate e pressione ↵ Entrar. E se localizar já foi instalado, você receberá a mensagem mlocate já é a versão mais recente ver.
  • No Arch Linux você usa o gerenciador de pacotes pacman: pacman-Syu mlocate
  • Para o Gentoo, use emerge: emergir mlocalizar
  • Imagem intitulada 690519 11
    2. atualizo você .localizarbase de dados. Isto localizar- comando não encontrará nada até que um banco de dados seja construído e atualizado. Isso é feito diariamente, mas você também pode executá-lo manualmente. Você terá que fazer isso primeiro se você imediatamente localizar quer começar a usar.
    modelo sudo atualizadob e pressione ↵ Entrar.
    Imagem intitulada 690519 12
    3. Uso .localizarpara realizar buscas simples.localizar é rápido, mas não tem tantas opções quanto achar. Você pode fazer isso da mesma forma que com achar faça uma pesquisa simples.
    localize -i "*.jpg"
  • Este comando procura em todo o sistema arquivos com a extensão .jpg. o piadista * funciona da mesma forma que com achar.
  • Assim como o comando achar, devem -eu ignore a capitalização da consulta.
    Imagem intitulada 690519 13
  • 4. Limite os resultados da sua pesquisa. Se suas pesquisas retornarem muitos resultados para usar, você pode diminuir isso com a opção -n, seguido pelo número de resultados que você deseja exibir.
    localize -n 20 -i "*.jpg"
  • Apenas os primeiros 20 resultados que correspondem à consulta serão mostrados.
  • Você também pode usar o sinal | usar para enviar os resultados através das comportas para menos para uma rolagem mais fácil.

    Método3 de 3:Pesquisar texto em arquivos

    Imagem intitulada 690519 14
    1. Use o comando .greppara procurar strings em arquivos. Se você estiver procurando por um arquivo que contenha um determinado texto ou string, você pode usar o comando grep usar. Um simples grep- comando é construído da seguinte maneira:
    grep -r -i "consulta de pesquisa" /caminho/para/diretório/
  • -r definir a pesquisa para "recursivamente", para que ele pesquise no diretório atual e em todos os seus subdiretórios um arquivo contendo a string de consulta.
  • -eu significa que a consulta não diferencia maiúsculas de minúsculas. Se você quiser forçar a pesquisa a diferenciar maiúsculas de minúsculas, deixe o parâmetro -eu um jeito.
  • Imagem intitulada 690519 15
    2. Omitir texto extra. Quando você grep usado para uma pesquisa, conforme indicado acima, você verá o nome do arquivo, juntamente com o texto e a consulta correspondente, ambos enfatizados. Você pode ocultar o texto correspondente e mostrar apenas os nomes dos arquivos junto com os caminhos, adicionando o seguinte:
    grep -r -i "consulta de pesquisa" /caminho/para/diretório/ | corte -d: -f1
    Imagem intitulada 690519 16
    3. Ocultar mensagens de erro. O comando grep retornará um erro se tentar acessar diretórios sem a permissão necessária ou se encontrar diretórios vazios. Você pode encaminhar as mensagens de erro para /dev/null, o que impedirá que elas apareçam nos resultados da pesquisa.
    grep -r -i "consulta de pesquisa" /caminho/para/diretório/ 2>/dev/null

  • Оцените, пожалуйста статью