Mort simple.
Comment renommer
05_h.png
06_h.png
à
05_half.png
06_half.png
Au moins, je pense que c'est simple, mais c'est difficile pour Google pour ce genre de chose à moins que vous ne le sachiez déjà.
Merci....
Utilisez simplement bash, pas besoin d'appeler des commandes externes.
for file in *_h.png
do
mv "$file" "${file/_h.png/_half.png}"
done
Ne pas ajouter #!/bin/sh
Pour ceux qui ont besoin de cette doublure:
for file in *.png; do mv "$file" "${file/_h.png/_half.png}"; done
Do not add #!/bin/sh
? J'ai essayé à la fois de travailler avec / sans cette déclaration.#!/bin/bash
. Cela dit, bash est normalement le shell par défaut sur de nombreux ordinateurs, vous ne trouverez donc pas beaucoup de différences: D Vous pouvez trouver plus d'informations iciEssayez la
rename
commande:Mettre à jour:
exemple d'utilisation:
créer du contenu
solution d'essai:
la source
ls
? qu'est-ce querename ...
vous essayez?rename
n'est pas un outil Unix standard.brew install rename
's//'
- j'ai fait référence à l'homme et il y avait un simple synopsisrename [options] expression replacement file...
rename from util-linux 2.23.2
.
correspond à N'IMPORTE QUEL caractère, pas seulement un point - pour un point littéral, utilisez à la\.
placela source
mv $f $fnew
parecho $fnew
comme deuxième ligne pour m'assurer que la sortie semble saine.Êtes-vous à la recherche d'une solution pure bash? Il existe de nombreuses approches, mais en voici une.
Cela suppose que les seuls fichiers du répertoire en cours qui se terminent par
_h.png
sont ceux que vous souhaitez renommer.Beaucoup plus spécifiquement
En supposant que ces deux exemples sont les vôtres. des dossiers.
Pour le cas général, de renommer le fichier en a été couvert avant .
la source
Utilisez l'
rename
utilitaire écrit en perl. Peut-être que ce n'est pas disponible par défaut cependant ...la source
la source
J'ai eu une question similaire: dans le manuel, il décrit renommer comme
pour que vous puissiez l'utiliser de cette manière
Dans le code: «_h» est l'expression que vous recherchez. «_half» est le modèle par lequel vous souhaitez remplacer. '* .png' est la plage de fichiers que vous recherchez pour vos éventuels fichiers cibles.
J'espère que cela peut aider c:
la source
Une autre approche peut être manuellement en utilisant l'option de changement de nom par lots
Faites un clic droit sur le fichier -> Commandes personnalisées de fichier -> Renommer par lots et vous pouvez remplacer h. avec la moitié.
Cela fonctionnera pour l'interface graphique basée sur Linux utilisant WinSCP, etc.
la source
Utilisez l'
rename
utilitaire:la source
Bon mot:
for file in *.php ; do mv "$file" "_$file" ; done
la source
Bien que l' ensemble de réponses soit complet, je dois en ajouter un autre manquant.
la source