Usando o módulo Ansible Find para localizar arquivos

Usando o módulo Ansible Find para localizar arquivos
Ansible é uma CLI, pesquisamos arquivos específicos usando o módulo "encontrar". O módulo Find é a linha de comando Ansible Analog para a opção de pesquisa em GUIs.

Também se pode dizer que o módulo de localização é muito semelhante ao uso do comando "Find" no Linux. Obviamente, os parâmetros e operadores do módulo e do comando são diferentes, mas eles funcionam da mesma maneira.

Se você quiser aprender a encontrar arquivos e pastas usando Ansible, você chegou ao lugar certo, pois daremos a você um guia abrangente sobre o módulo de localização.

Parâmetros do módulo de encontro

O encontro pode procurar seus arquivos com base em diferentes atributos. Você pode aplicar filtros como a idade do arquivo, a última data acessada, data modificada, etc. Esses filtros podem ser especificados nos parâmetros enquanto usam o módulo de localização. Os diferentes parâmetros disponíveis são:

Idade: Como mencionado anteriormente, o parâmetro de idade pode ser especificado com o encontro, para que o Ansible possa procurar arquivos que tenham "xyz" dias de idade ou tenham idade "xyz".

Contém: Caso você se lembre do que foi escrito no arquivo que está procurando, você pode especificar esse padrão de string ou regex com o parâmetro "contém". O sistema verificará os arquivos dessa sequência específica e fornecerá os arquivos que contêm essa string.

Profundidade: Este parâmetro é usado para especificar o número de níveis de diretórios que o sistema deve ir para verificar o arquivo específico que você está procurando.

Tipo de arquivo: Com este parâmetro, você especifica o "tipo de arquivo" que o sistema deve procurar. Usando "qualquer", você diz ao sistema para verificar cada tipo de arquivo presente na memória. Você também pode optar por procurar o arquivo em um diretório específico. Outra opção é especificar o tipo de arquivo. O módulo analisará apenas o tipo de arquivo especificado.

Escondido: Alguns arquivos ficam escondidos. Com este parâmetro, você pode dizer ao módulo para verificar o arquivo que está procurando entre os arquivos ocultos também.

Caminhos: Como o nome sugere, este parâmetro especifica os caminhos do diretório que o sistema pesquisará para encontrar o arquivo que você deseja acessar.

Padrões: Esses padrões são os padrões de concha e regex. Usando este parâmetro, podemos especificar o módulo para procurar arquivos com esses padrões regex ou shell em seus nomes de basenos. Quando os padrões regex são especificados, o módulo procura o arquivo com padrões regex semelhantes em seus nomes básicos e retorna esses arquivos como saída. Este parâmetro também espera que uma lista de diferentes padrões de regex sejam dados.

Exclui: Este parâmetro é combinado com o parâmetro "padrões". Ele exclui dizer ao módulo para procurar arquivos que não tenham o padrão regex especificado.

Read_whole_file: Este parâmetro é combinado com o parâmetro "contém". Ele instrui o sistema a procurar o padrão regex especificado com os "contém" em todo o arquivo.

Recurso: O padrão Recurse especifica que o módulo procura o arquivo movendo -se recursivamente (para cima) entre os diretórios.

Tamanho: Este parâmetro especifica o tamanho do arquivo. Quando passamos um tamanho de arquivo para o módulo, ele procura arquivos com um tamanho maior que o especificado. Para procurar arquivos com tamanhos menores que os especificados, use o sinal menos (-) antes do valor numérico.

Use_regex: Este parâmetro tem um valor booleano. Se for "verdadeiro", o módulo pesquisa os arquivos para o padrão regex especificado. Caso seja "falso", o módulo procura arquivos com padrões de shell em seus nomes basenos.

Estes eram os parâmetros disponíveis com o módulo de localização. Em seguida, olhamos para os valores de retorno.

Examinado: Isso nos diz o número de arquivos que o módulo examinou enquanto procura o objeto especificado.

Arquivos: Estes são todos os arquivos que corresponderam à consulta que demos ao módulo.

Coincide: O número de arquivos que corresponderam à nossa consulta.

Skipped_paths: Isso nos diz que os caminhos ignoraram enquanto encontram o objeto e por que eles foram ignorados.

Exemplos

- Nome: Find /XYZ Arquivos com mais de 10 dias
encontrar:
Caminhos: /xyz
Idade: 2d
Recurse: Sim

Uma vez feito isso, você teria que executar o seguinte comando no shell Linux:

Livro de teste Ansible-PlayBook.yml

No exemplo acima, especificamos os caminhos dos arquivos e a idade desses arquivos. O módulo procurará no diretório especificado e nos fornecerá aqueles arquivos cuja idade é superior a 10 dias.

- Nome: Find /var /Log todos os diretórios
encontrar:
Caminhos: /var /log
Recurse: Não
File_type: diretório
exclui: 'xyz'

Para executar este manual, o seguinte comando teria que ser executado no terminal de comando:

Livro de teste Ansible-PlayBook.yml

Aqui, especificamos o tipo de arquivo e os caminhos para procurar. O File_type foi especificado como "diretório", para que o módulo pesquise todos os diretórios. O parâmetro "exclui" que usamos é especificar um padrão regex arbitrário para não procurar.

Conclusão

Neste artigo, analisamos o Ansible Encontre um módulo. O encontro pode ser usado para procurar um arquivo específico em nosso sistema. Também analisamos os diferentes parâmetros disponíveis com o encontro. Os diferentes parâmetros disponíveis realmente nos ajudam a restringir a pesquisa; Isso torna o módulo mais eficiente.

Se você espera. Para mais perguntas, informe -nos nos comentários.