O comando
locate
está colocando automaticamente o curinga * após a sequência de pesquisa e retornando resultados indesejáveis extra.
Esse é o comportamento padrão de locate
. Veja man locate
:
If any PATTERN contains no globbing characters, locate behaves as if
the pattern were *PATTERN*.
Para corresponder apenas ao nome do arquivo, defina explicitamente um glob no componente de caminho:
locate '*/display-auto-brightness'
Ou use um regex e a opção --basename
para corresponder a um nome de arquivo exato:
locate --basename --regex '^display-auto-brightness$'
Ou, dados os resultados que você mostrou, você pode simplesmente pedir caminhos que contenham display-auto-brightness
no final:
locate --regex 'display-auto-brightness$'
Deixarei que você use isso em um script que passe por cima de cada nome de arquivo em um diretório.