Bonjour,

Je suis, en ce moment, en train de créer un script en environnement Shell.

Voici un extrait du script ci-dessous :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
#!/bin/bash
 
DOSSIER_SOURCE=/mon_dossier_source
 
DOSSIER_DESTINATAIRE=/mon_dossier_destinataire
 
cp $DOSSIER_SOURCE+="/*.class.php" $DOSSIER_DESTINATAIRE
 
cd $DOSSIER_DESTINATAIRE
 
for i in *.class.php; do mv -- "$i" "${i%.class.php}.php"; done
 
cd ~
Ce script permet de copier des fichiers ayant pour extension ".class.php" vers un sous répertoire.

Une fois ces fichiers copiés je les renomme en changeant l'extension de ".class.php" en ".php".


Seulement voilà, j'ai des erreurs suivantes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
cp: impossible d'évaluer '/mon_dossier_source/*.class.php' aucun fichier ou dossier de ce type
et

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
mv: impossible d'évaluer '*.class.php' aucun fichier ou dossier de ce type
Comment puis-je faire interpréter pour faire copier les fichiers ce terminant par ".class.php" ?

Comment effectuer la bonne concaténation entre la variable et une chaine de caractères sans que le caractère spécial '*' soit interprété comme faisant partie du nom d'un fichier ?

Je vous remercie d'avance pour votre aide.

Cordialement.