Modification chemin d'acces fichier tout en gardant son nom

Fermé
jls - 24 janv. 2021 à 19:39
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 25 janv. 2021 à 07:49
Bonjour,

Je fais actuellement des scripts sur des bases de tests pour un compilateur et je suis amené à comparer deux fichiers .res et .ref avec diff. Le fichier .res est généré à partir d'un fichier .deca et ces trois fichiers ont le meme nom, celui du .deca et sont dans le même dossier. Depuis le debut je fais comme ceci :
if ( diff "${1%.deca}".res  "${1%.deca}".ref -s) | grep -q "are identical)"

Mais je commence à avoir beaucoup de tests et j'aimerai mettre les .ref dans un sous dossier ref. Je n'arrive donc pas à rajouter dans l'adresse du .ref la mention du sous dossier ref pour permettre la comparaison.

Merci d'avance pour vos réponses j'espère avoir été clair !


Configuration: Linux / Chrome 86.0.4240.75
A voir également:

5 réponses

Pat1_8773 Messages postés 17 Date d'inscription dimanche 24 janvier 2021 Statut Membre Dernière intervention 31 janvier 2021
24 janv. 2021 à 21:10
Bonjour,

Il faut mettre le chemin diff pass.tmp /etc/passwd
Le chemin dans une variable d'environnement
0
Je ne suis pas sur de comprendre votre reponse. diff me permet juste d'extraire les differences entre les .res et .ref, et grep verifie que diff renvoie bien une égalité des fichiers. Le soucis c'est que la configuration dans laquelle je suis ne me permet pas de rajouter le sous dossier dans lequel je souhaite mettre les .ref, ou du moins je n'y arrive pas.
0
Pat1_8773 Messages postés 17 Date d'inscription dimanche 24 janvier 2021 Statut Membre Dernière intervention 31 janvier 2021
24 janv. 2021 à 22:04
si sous êtes dans /home/jls
mkdir REPERTOIRE
mv *.ref ./REPERTOIRE
cd /
diff /home/jls/REPERTOIRE/fic.res  /usr/local/bin/local/fic2.res

Vous dites Je n'arrive donc pas à rajouter dans l'adresse du .ref la mention du sous dossier ref pour permettre la comparaison.
diff chemin absolu/votre_dossier/*.res
0
en fait le probleme vient du fait que j'effectue cette comparaison sur tous mes fichiers avec une boucle for, je récupère le nom des fichier .res et.ref à partir des fichier .deca sur lesquels tourne la boucle. je n'ai donc directement acces au nom du fichier mais à tout le chemin ce qui fait que je n'arrive pas à y inserer la mention d'un nouveau dossier.
Je précise que tout celà est fait dans un script shell.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 419
Modifié le 25 janv. 2021 à 14:54
Salut,

C'est pas clair ton histoire ;-\
Déjà il est de coutume de montrer un AVANT => APRÉS de ce qu'on a et de ce qu'on souhaite obtenir, histoire qu'il n'y ait pas de mal-entendu.

Peut-on avoir un exemple de contenu de la variable
"${1}"
et de
"${1%.deca}"
?

Quelques lignes de listing de ton répertoire contenant les fameux fichiers ?


0