J'ai une liste de noms de fichiers comme ceci :
P1020804.JPG
P1020805.JPG
P1020806.JPG
P1020807.JPG
P1020808.JPG
Comment les retrouver au mieux par une seule requête dans Spotlight, Terminal, mdfind ou locate ?
J'ai une liste de noms de fichiers comme ceci :
P1020804.JPG
P1020805.JPG
P1020806.JPG
P1020807.JPG
P1020808.JPG
Comment les retrouver au mieux par une seule requête dans Spotlight, Terminal, mdfind ou locate ?
Je vais supposer que votre lista est juste une liste représentative et le noms de fichiers Suivez cela motif et peut en fait être plus que ces noms de fichiers exacts. Ainsi, l'utilisation d'un expression régulière étendue va être utilisé pour trouver les fichiers correspondant aux motif indiqués dans les exemples de noms de fichiers dans votre OP.
find -E . -regex '.*\/P[0-9]{7}\.JPG'
-E
Interpréter les expressions régulières suivies de -regex
y -iregex
comme des expressions régulières étendues (modernes) plutôt que des expressions régulières de base (BRE). Le site re_format(7)
La page du manuel d'utilisation décrit entièrement les deux formats..
Recherche dans le répertoire courant et ses sous-répertoires.-regex pattern
Vrai si le chemin d'accès complet du fichier correspond au modèle utilisant une expression régulière..*\/P[0-9]{7}\.JPG
.*
correspond à n'importe quel caractère (à l'exception des terminaisons de ligne).*
Quantificateur - Correspond entre zéro et un nombre illimité de fois, autant de fois que possible, en redonnant au besoin (gourmand).\/
correspond au caractère /
littéralement (sensible à la casse).P
littéralement (sensible à la casse).[0-9]
correspond à un seul caractère présent dans la liste.{7}
Quantificateur - Correspond exactement à 7 fois, 0-9
un caractère unique compris entre 0
(indice 48) et 9
(indice 57) (sensible à la casse).\.
correspond au caractère .
littéralement (sensible à la casse).JPG
littéralement (sensible à la casse).$ find -E . -regex '.*\/P[0-9]{7}\.JPG'
./Pictures/P1020799.JPG
./Pictures/P1020800.JPG
./Pictures/P1020801.JPG
./Pictures/P1020802.JPG
./Pictures/P1020803.JPG
./Pictures/P1020804.JPG
./Pictures/P1020805.JPG
./Pictures/P1020806.JPG
./Pictures/P1020807.JPG
./Pictures/P1020808.JPG
./Pictures/P1020809.JPG
./Pictures/P1020810.JPG
$
Note : Le .
est le répertoire de travail actuel, qui par défaut, si vous venez d'ouvrir Terminal, sera votre répertoire d'accueil. Si les fichiers se trouvent ailleurs, vous pouvez utiliser un autre chemin de départ, par exemple /
débutera dans le Racine du disque dur du Macintosh, (en supposant une dénomination par défaut). Comme vous pouvez le voir dans l'exemple de sortie, les noms de fichiers cibles trouvés par la commande motif chiral étaient dans mon dossier d'images.
LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.