Puis-je utiliser les caractères génériques du shell pour sélectionner les noms de fichiers allant à travers les nombres à deux chiffres (par exemple, à partir de foo_1.jpg pour foo_54.jpg)?
J'ai un répertoire avec des fichiers image foo_0.jpg
à foo_99.jpg
. Je voudrais copier des fichiers foo_0.jpg
par foo_54.jpg
.
Est-ce possible seulement à l'aide de bash les jokers?
Je pense à quelque chose comme cp foo_[0-54].jpg
mais je sais que cela sélectionne 0-5
et 4
(à droite?)
Aussi, si il n'est pas possible (ou efficace) avec seulement des caractères génériques quelle serait une meilleure façon de le faire?
Merci.
Vous devez vous connecter pour publier un commentaire.
Je suppose que vous voulez copier ces fichiers dans un autre répertoire:
J'aime glenn jackman réponse, mais si vous voulez vraiment utiliser d'expansion, à la suite peut également travailler pour vous:
Étendue d'expansion
+()
correspond à une ou plusieurs occurrences de l'expression est dans les parenthèses.Maintenant, cela va copier TOUS les fichiers nommés
foo_
suivi d'un nombre quelconque, suivie par.jpg
. Cela comprendrafoo_55.jpg
,foo_139.jpg
, etfoo_1223218213123981237987.jpg
.Sur la deuxième pensée, glenn jackman a la meilleure réponse. Mais, elle m'a donné l'occasion d'en parler étendue d'expansion.
ls foo_[0-9].jpg foo_[1-4][0-9].jpg foo_5[0-4].jpg
Essayer avec ls et si cela semble bon pour vous, alors ne la copie.