Je me demande s'il est possible d'utiliser bash pour mv
plusieurs fichiers avec des extensions différentes dans un même répertoire, par exemplemv 1.png 2.jpg dir/
sauf correspondance avec de nombreux fichiers
Je me demande s'il est possible d'utiliser bash pour mv
plusieurs fichiers avec des extensions différentes dans un même répertoire, par exemplemv 1.png 2.jpg dir/
sauf correspondance avec de nombreux fichiers
Utilisation globules ! Un glob est un modèle qui s'étend à plusieurs noms de fichiers. C'est aussi très bien expliqué ici .
Par exemple *
correspond à n'importe quelle chaîne de n'importe quelle longueur, et vous pourriez déplacer tous les fichiers JPG et PNG quelque part avec :
mv *.jpg *.png dir
L'utilisation de la extglob
dans Bash, vous pouvez aussi faire :
shopt -s extglob
mv *(*.jpg|*.png) dir
La méthode la plus simple consiste à utiliser un mélange d'expansion d'accolades et de globbing.
mv -iv -- *.{png,jpg} dir/
Ce qui se traduit par
mv -iv -- *.png *.jpg dir/
Ce qui est étendu à (tous les fichiers -- y compris les répertoires/symlincs -- se terminant par .png
ou .jpg
)
mv -iv -- 1.png 2.jpg ... dir/
Remarque : -iv --
est inclus pour la sécurité/verbosité
-i, --interactive
prompt before overwrite
-v, --verbose
explain what is being done
[GETOPT] The special argument "--" forces an end of option-scanning
regardless of the scanning mode.
(Meaning everything after it gets treated as an argument)
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.