encontrar arquivos e dados específicos dentro de arquivos

1

Sou bem novo no Ubuntu. Estou tentando entender conceitos de encontrar arquivos específicos em diretórios e, em outra instância, encontrar uma string específica ou um padrão de strings em arquivos. Eu li vários artigos e encontrei o comando grep e find. Estou no caminho certo, se não, por favor, me guie?

    
por Naseer Ahmed 07.03.2014 / 19:17

4 respostas

1
O comando

grep é usado para pesquisar texto ou pesquisar no arquivo fornecido por linhas contendo uma correspondência para as strings ou palavras dadas. Por padrão, o grep exibe as linhas correspondentes.

Exemplos:

grep 'yourword' filename 
grep 'yourword' file1 file2 file3
grep 'string1 string2'  filename
cat otherfile | grep 'something'
command | grep 'something'
command option1 | grep 'data'
grep --color 'data' fileName

Encontrar O comando é um dos comandos mais importantes e mais usados nos sistemas Linux. Encontre o comando usado para pesquisar e localizar a lista de arquivos e diretórios com base nas condições.

Exemplos:

Encontre todos os arquivos cujo nome é test.txt em um diretório de trabalho atual.

find . -name test.txt

Encontre todos os diretórios cujo nome é test in / directory.

find / -type d -name test

Encontre todos os arquivos cujo nome é test.txt e contenha maiúsculas e minúsculas no diretório / home.

find /home -iname test.txt

Mais ajuda man grep , man find

Referência Site

    
por nux 07.03.2014 / 19:33
1

Para procurar um arquivo específico dentro do diretório,

locate filename

OR

find /path/to/search -iname 'filename'

Para pesquisar palavras específicas em um arquivo

grep text /path/to/the/file
    
por Avinash Raj 07.03.2014 / 19:23
1

Você pode usar o comando find e grep de várias maneiras:

encontre

  • Para encontrar um arquivo, por exemplo demo.tx t no uso do diretório atual:
    find . -name demo.txt onde . representa o diretório atual. Você pode mudá-lo de acordo com sua necessidade.
  • Para encontrar o mesmo arquivo em casa ignorando o caso:

    find ~/ -iname demo.txt em que ~/ representa seu diretório inicial.

  • Para encontrar o diretório em uso:

    find . -type d -name <directory_name>

  • Encontrando todos os arquivos vazios

    find . -type f -empty

  • Encontrando todo o diretório vazio

    find . -type d -empty

  • Encontrando todos os arquivos com mais de 100 MB

    find / -size +100M

para mais, consulte man find

grep

  • Procure a string dada em um arquivo

    grep "<string>" <filename>

  • procurando determinada string em vários arquivos

    grep "<string>" <file_pattern>

  • Pesquisa insensível a maiúsculas e minúsculas para a string dada em um arquivo

    grep -i "string" <file_name>

para mais, consulte man grep

    
por g_p 07.03.2014 / 19:51
1

A versão mais útil de grep pode ser grep -r . -r não pesquisa apenas o diretório especificado: ele recursivamente faz uma busca em todas as pastas filhas, portanto, se você não sabe onde colocar um arquivo, o grep encontre para você.

    
por schnauss 08.03.2014 / 06:17