Lundi - Traitement des Extensions
15/03/2004
Renommer un groupe de fichiers en une seule commande.
Cela *ne* marchera *pas* :
$ mv *.html *.php
usage: mv [-fi] source target
mv [-fi] source ... directory
Le script suivant, appelé ‘ext’ pour ‘basé sur l’extension’, vous permettra d’y arriver :
$ cat ext
#!/bin/bash
shopt -s nullglob
for file in *.$2; do
$1 “$file” “${file%.$2}.$3″
done
Utilisez ‘ext’ comme suit pour renommer (mv) *.html de façon à obtenir une extension du type .php :
$ ext mv html php
Utilisez toute commande similaire, telle que ‘cp’, dans le script ‘ext’.
Ajoutez une vérification de paramètre dans le script :
$ cat ext #!/bin/bash
if [ "$3" = "" ] || [ "$4" != "" ]; then echo 'For each file *.ext1, executes "command file.ext1 file.ext2"' echo ' eg "cp html php" pour copier tous les fichiers html en équivallents php' echo ' "mv html php" pour renommer tous les fichiers html et leur attribuer une extension php' echo "Usage: ${0##*/} command ext1 ext2" exit fi
# cette option permet de retourner null et non *.$2 si aucun fichier ne correspond à *.$2 shopt -s nullglob
for file in *.$2; do $1 "$file" "${file%.$2}.$3" done
Si vous souhaitez en apprendre plus sur Mac OS X Unix visitez le Learning Center
cliquez ici.
- Pour les débutants : Le Tutoriel Mac OS X Unix
- Pour plus d’informations sur des sujets spécifiques : Mac OS X Advanced Unix
- Pour des réponses à des problèmes communs : Mac OS X How To
Chargement
Commentaires récents