Find
Resumo
- Retorne uma lista de arquivos com base em critérios específicos. Vários critérios são AND juntos.
Parâmetros
Parâmetro | Tipo | Escolhas | Valor Padrão | Comentários |
|---|---|---|---|
age | string | | Selecione arquivos cuja idade seja igual ou superior ao tempo especificado. Use uma idade negativa para encontrar arquivos iguais ou menores que o tempo especificado. Você pode escolher segundos, minutos, horas, dias ou semanas, especificando a primeira letra de qualquer uma dessas palavras (por exemplo, "1w"). |
age_stamp | string | Escolhas: - mtime (default) - atime - ctime | Escolha a propriedade do arquivo com a qual comparamos a idade. |
contains | string | | Uma expressão regular ou padrão que deve corresponder ao conteúdo do arquivo. |
depth | integer | | Defina o número máximo de níveis para descer. Definir recurse como no substituirá este valor, que é efetivamente a profundidade 1. O padrão é profundidade ilimitada. |
excludes aliases: exclude | list / elements=string | | Um ou mais padrões (shell ou regex), cujo tipo é controlado por use_regexopção. Os itens cujos nomes de base correspondem a um excludespadrão são retirados das patterns correspondências. Vários padrões podem ser especificados usando uma lista. |
file_type | string | Escolhas: - file (default) - any - directory - link | Tipo de arquivo a ser selecionado. |
follow | boolean | Escolhas: - false (default) - true | Defina yes para seguir links simbólicos no caminho para sistemas com python 2.6+. |
get_checksum | boolean | Escolhas: - false (default) - true | Defina como yes para recuperar a soma de verificação SHA1 de um arquivo. |
hidden | boolean | Escolhas: - false (default) - true | Defina como yes para incluir arquivos ocultos, caso contrário, eles serão ignorados. |
paths - required aliases: name, path | list / elements=string | | Lista de caminhos de diretórios a serem pesquisados. Todos os caminhos devem ser totalmente qualificados. |
patterns aliases: pattern | list / elements=string | Default: "*" | Um ou mais padrões (shell ou regex), cujo tipo é controlado por opçãouse_regex. Os padrões restringem a lista de arquivos a serem retornados àqueles cujos nomes de base correspondem a pelo menos um dos padrões especificados. Vários padrões podem ser especificados usando uma lista. O padrão é comparado ao nome da base do arquivo, excluindo o diretório. Ao usar regexen, o padrão DEVE corresponder ao nome do arquivo INTEIRO, não apenas a partes dele. Portanto, se você deseja corresponder a todos os arquivos que terminam em .default, você precisa usar '. * \. Default' como um regexp e não apenas '\ .default'. Este parâmetro espera uma lista, que pode ser separada por vírgulas ou YAML. Se algum dos padrões contiver uma vírgula, certifique-se de colocá-los em uma lista para evitar dividir os padrões de maneiras indesejáveis. |
recurse | boolean | Escolhas: - false (default) - true | Se o destino for um diretório, desça recursivamente para o diretório à procura de arquivos. |
size | string | | Selecione arquivos cujo tamanho seja igual ou maior que o tamanho especificado.Use um tamanho negativo para localizar arquivos iguais ou menores que o tamanho especificado. Os valores não qualificados estão em bytes, mas b, k, m, g e t podem ser acrescentados para especificar bytes, kilobytes, megabytes, gigabytes e terabytes, respectivamente. O tamanho não é avaliado para diretórios. |
use_regex | boolean | Escolhas: - false (default) - true | Se no, os padrões são globs de arquivo (shell). Se yes, eles são regexes python. |
Exemplos
# Encontrar recursivamente arquivos / tmp com mais de 2 dias
find:
paths: /tmp
age: 2d
recurse: yes
# Encontrar recursivamente arquivos / tmp com mais de 4 semanas e igual ou maior que 1 megabyte
find:
paths: /tmp
age: 4w
size: 1m
recurse: yes
# Encontrar recursivamente arquivos / var / tmp com tempo de último acesso maior que 3600 segundos
find:
paths: /var/tmp
age: 3600
age_stamp: atime
recurse: yes
# Encontre arquivos / var / log iguais ou maiores que 10 megabytes terminando com .old ou .log.gz
find:
paths: /var/log
patterns: '*.old,*.log.gz'
size: 10m
# Observe que as aspas duplas YAML requerem barras invertidas de escape, mas as aspas simples yaml não.
# Encontre arquivos / var / log iguais ou maiores que 10 megabytes terminando com .old ou .log.gz via regex
find:
paths: /var/log
patterns: "^.*?\\.(?:old|log\\.gz)$"
size: 10m
use_regex: yes
# Encontre / var / log todos os diretórios, exclua nginx e mysql
find:
paths: /var/log
recurse: no
file_type: directory
excludes: 'nginx,mysql'
# Ao usar padrões que contêm uma vírgula, certifique-se de que sejam formatados como listas para evitar a divisão do padrão
# Use um único padrão que contenha uma vírgula formatada como uma lista
find:
paths: /var/log
file_type: file
use_regex: yes
patterns: ['^_[0-9]{2,4}_.*.log$']
# Use vários padrões que contenham uma vírgula formatada como uma lista YAML
find:
paths: /var/log
file_type: file
use_regex: yes
patterns:
- '^_[0-9]{2,4}_.*.log$'
- '^[a-z]{1,5}_.*log$'
Valores Retornados
Chave | Tipo | Retornado quando | Descrição |
|---|---|---|---|
examined | integer | sucesso | Número de objetos do sistema de arquivos examinados |
files | list / elements=string | sucesso | Todas as correspondências encontradas com os critérios especificados. |
matched | integer | sucesso | Número de partidas |