Précédent   Forum des professionnels en informatique > Systèmes > Linux
Linux Forum d'entraide sur le système Linux. Avant de poster -> Tutoriels Linux, F.A.Q Linux
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/10/2011, 17h25   #1
Invité de passage
 
Inscription : mai 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 3
Points : 1
Points : 1
Par défaut Récupération de sous-répertoire avec un boucle for

Bonjour à tous,

Je viens solliciter votre aide car je crains de ne pas m'en sortir seul.

Je tente d'écrire un script qui va passer dans un répertoire et en lister les sous-répertoire pour passer une action dessus.

Voici le code en question :

for f in /home/application/module/*
do
ln -s "$REPERTOIRE_SOURCE/$f" "$REPERTOIRE_DESTINATION/$f"
done

Mon problème c'est que je cherche à avoir la variable f en chemin relatif et non absolu, pour pouvoir ensuite m'en servir correstement dans le ln.

Pourriez-vous m'indiquer comment arriver à récupérer le f en chemin relatif dans la boucle for, je précise que je cherche un chemin nom_module et non module/nom_module.

Ou le cas échéant, comme c'est après tout une chaine de caractere, comment agir sur la variable de sorte à ne garder que la dernière partie du chemin.

Merci d'avance pour votre aide.
Elendae est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 17h43   #2
Invité de passage
 
Inscription : mai 2010
Messages : 3
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 3
Points : 1
Points : 1
Finalement j'ai réussi à contourner le problème en faisant un

cd /home/application/module
for f in ./*


Je reste preneur de toute info me permettant de faire quelque chose de plus propre.
Elendae est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 19h26   #3
Expert Confirmé Sénior
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 2 071
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 2 071
Points : 4 154
Points : 4 154
Bonjour,

il ne s'agit pas réellement du chemin relatif (d'ailleurs relatif par rapport à quoi ?)
sinon...
Code :
1
2
3
4
for f in /home/applications/module/*
do fp="${f##*/}"
   echo "$fp"
done
cf. man bash /remplacement des paramètres
ou ici
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h13.


 
 
 
 
Partenaires

Hébergement Web