Existe-t-il une commande de terminal Mac permettant de transformer tous les fichiers .html en .txt, y compris les fichiers des sous-dossiers ?
Réponses
Trop de publicités?Je suppose qu'en fait vous voulez juste les renommer. Exécutez la commande suivante depuis l'intérieur du dossier. Si vous ne faites pas confiance à la commande, ajoutez echo
avant mv
pour voir ce qu'il ferait.
find . -type f -name "*.html" -exec bash -c "mv {} \`dirname {}\`/\`basename -s.html {}\`.txt" \;
Cela permet de faire ce qui suit :
- Recherche chaque fichier (
-type f
) dans le dossier actuel (.
) dont le nom se termine par ".html" (-name "*.html"
) - Il recherche ensuite le chemin du fichier (
dirname
), ajoute une barre oblique (/
) et le nom du fichier original sans le suffixe ".html" (basename -s.html
) et ajoute un suffixe ".txt". - Ensuite, il renomme le fichier original (
mv
).
En fait, la notation ` ` pour utiliser la sortie d'un programme comme partie d'une commande est dépréciée.
$()
devrait être utilisé à la place, mais dans le cas defind
les backticks sont plus faciles à utiliser.
Renommer
Vous pouvez utiliser rename
que vous pouvez installer en utilisant brasser .
Installer rename
en utilisant la bière : brew install rename
Renommer des fichiers en utilisant rename
:
rename -s .html .txt *