J'ai 40 fichiers MP4 dans un dossier.
Chaque fichier commence par video_
. Chaque fichier est au format video_*.mp4
.
Je dois renommer tous les fichiers avec video_
supprimé du début de chaque fichier. Comment puis-je faire cela depuis le terminal?
Vous pouvez le faire par une commande de terminal dans un répertoire où se trouvent ces fichiers.
rename 's/^video_//' *.mp4
Cela signifie que vous sélectionnez tous les noms de fichiers commençant par video_
et que vous remplacez video_
par rien. Je suppose que s
est pour "substitute".
^
indique le début de la chaîne. Si vous omettez ^
, la première occurrence de video_
sera supprimée quelle que soit sa position dans la chaîne. Mais dans votre cas, cela n'a pas vraiment d'importance.
Note: Les versions Ubuntu supérieures à 17.04 ne sont pas livrées avec le paquet rename
, mais vous pouvez toujours l'installer à partir de référentiels par défaut via Sudo apt install rename
Utilisation de rename
(prename
):
rename -n 's/^video_//' video_*.mp4
Si vous êtes satisfait des modifications à apporter, supprimez -n
pour que l'opération se produise réellement:
rename 's/^video_//' video_*.mp4
Utilisation de l’expansion du paramètre bash
:
for file in video_*.mp4; do mv -i "$file" "${file#video_}"; done
${file#video_}
est le modèle d’extension de paramètre à supprimer video_
du début des noms de fichiers.Ou
for file in video_*.mp4; do mv -i "$file" "${file/video_/}"; done
Celui-ci suppose que video_
ne vient qu'une fois dans les noms de fichiers
${file/video_/}
est un modèle d’extension de paramètre bash
qui remplacera video_
des noms de fichiers par des blancs.
Utiliser rename
rename 's/^video_//' *.mp4