J'essaie d'utiliser la commande Locate pour rechercher des fichiers dans mon dossier de départ, mais chaque fois que j'essaie de l'exécuter, je n'obtiens aucun résultat:
locate -i -l 4 --regexp '^\/home\/jack\/[A-Za-z0-9\/\ ]*(My.)*$'
J'ai également essayé ^\/home\/jack\/^(?!\.)[A-Za-z0-9\/\ ]*(My.)*$
mais cela ne donne aucun résultat non plus.
Le fichier que je recherche juste pour le tester est /home/jack/Music/Foals/My Number.flac
Je voudrais exclure les résultats des fichiers cachés de ma recherche.
(My.)*
faire? My.*$
travaux. Vous devez vous échapper ()
dans les RE de base.
--regexp
prend un regex de base. Essayez de passer --regexp
à --regex
(non p
). La page de manuel indique qu'il --regex
fait une correspondance regex étendue.
locate
. Est-il judicieux de combiner-b
(c'est-à-dire " Ne faire correspondre que le nom de base avec les modèles spécifiés.") Avec un chemin d'accès--regexp
? Pourquoi échappez-vous au/
s?