11 votes

Pourquoi la commande renommer est-elle absente de MacOS ?

Je renomme généralement les fichiers et les répertoires avec la commande mv commande. Je suis en train de lire un livre sur le shell bash qui mentionne la commande rename commandement. Lorsque j'ai exécuté man rename une page de manuel a été affichée. Cependant, lorsque j'ai saisi rename sur le shell bash, il a signalé :

-bash: rename: command not found

J'ai fait quelques recherches et j'ai découvert que l'on peut installer la rename avec Homebrew.

  • Y a-t-il une bonne raison de ne pas l'installer avec Homebrew ?

  • Y a-t-il quelque chose que vous pouvez faire avec le rename que vous ne pouvez pas faire avec la commande mv commande ?

Je suis également curieux de savoir s'il y a une explication connue du fait que les rename n'existe pas en premier lieu. Et pourquoi existe-t-il une page de manuel pour une commande qui n'existe pas ?

13voto

Nimesh Neema Points 44385

Dans l'installation par défaut de MacOS, la page de manuel rename est disponible dans la section 2. Comme vous pouvez le remarquer dans la page de manuel, rename n'est pas une commande mais un appel système BSD.

La formule Homebrew nommée rename est un script Perl. Vous devriez pouvoir l'installer sans problème. En fait, elle peut vous donner beaucoup plus de flexibilité que la simple commande mv.

Après avoir installé l'utilitaire de renommage via Homebrew, exécutez man rename affichera la page de manuel de l'utilitaire installé et non l'appel système BSD.

Je suis également curieux de savoir s'il existe une explication connue de la raison pour laquelle la commande n'existe pas en premier lieu.

renommer n'est pas une commande Unix standard.

Et pourquoi existe-t-il une page de manuel pour une commande qui n'existe pas ?

Comme mentionné ci-dessus, la page de manuel présente fait référence à l'appel système du même nom.

1voto

Piotr Gogolin Points 11

Avec rename vous pouvez rechercher et remplacer une chaîne de caractères dans plusieurs fichiers de manière simple :

rename 's/oldstring/newtext/' file00*

C'est vraiment utile. Avec mv vous ne pouvez pas faire la même chose. A moins que vous ne fassiez travailler la boucle :

for file in file00*; do new=${file/oldstring/newtext}; mv —- "$file" "$new"; done

-1voto

indianwebdevil Points 95

Vous pouvez installer en utilisant brew https://brewinstall.org/Install-rename-on-Mac-with-Brew/

J'espère que cela résout votre problème.

LesApples.com

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.

Powered by:

X