Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
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 08/07/2008, 11h09   #1
Invité régulier
 
Développeur Java
Inscription : octobre 2007
Messages : 17
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : octobre 2007
Messages : 17
Points : 5
Points : 5
Par défaut pointer sur le répertoire parent

Bonjour,


Cela peut paraître stupide, soit parce que c'est impossible, soit parce que c'est évident ... Mais comment est-ce que je peux définir une variable pointant sur le dossier parent du dossier depuis lequel s'exécute mon script?

"L'architecture":

Code :
1
2
3
4
 
dossier_application/bin
                   /lib
                   /log
Pour pointer sur "dossier_application", j'ai essayé, dans mon script "set_env.sh" qui se trouve dans "bin":

in "dossier_application/bin/set_env.sh"
Code :
1
2
3
4
5
 
APPL_HOME=..
APPL_HOME=../
APPL_HOME=./..
etc...
Mais aucune de ces versions ne fonctionne...

Merci d'avance pour votre aide !
Cordialement,
David
dasc82 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 12h01   #2
Membre expérimenté
 
Avatar de BlaireauOne
 
Inscription : mars 2007
Messages : 469
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2007
Messages : 469
Points : 576
Points : 576
le dossier parent du dossier depuis lequel s'exécute mon script?

J'ai mal interprété ta question. la Réponse est :

APPL_DIR=`dirname $PWD`

Ce qui suit donne le répertoire parent du répertoire contenant le script en cours d'exécution :

Une solution, peut-être pas la meilleure, en utilisant 'dirname'.

Script :

Code :
1
2
3
4
5
6
7
8
#!/bin/sh -x
 
echo '* $0 : ' $0
Dir=$(dirname $0)
DirUp="$Dir/.."
echo '* $DirUp : ' $DirUp
 
ls $DirUp

Exécution en mode 'Verbose' :

Code :
1
2
3
4
5
6
7
8
+ echo '* $0 : ' /home/HP_Administrateur/shl/xscript.sh
* $0 :  /home/HP_Administrateur/shl/xscript.sh
++ dirname /home/HP_Administrateur/shl/xscript.sh
+ Dir=/home/HP_Administrateur/shl
+ DirUp=/home/HP_Administrateur/shl/..
+ echo '* $DirUp : ' /home/HP_Administrateur/shl/..
* $DirUp :  /home/HP_Administrateur/shl/..
+ ls /home/HP_Administrateur/shl/..
__________________
Loi de Murphy:
La Théorie c'est quand ça ne marche pas mais que l'on sait pourquoi.
La Pratique c'est quand ça marche mais qu'on ne sait pas pourquoi.
Quand la théorie rejoint la pratique ça ne marche pas et on ne sait pas pourquoi.
BlaireauOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2008, 12h10   #3
Membre éprouvé
 
Avatar de alexp
 
Inscription : janvier 2006
Messages : 459
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : janvier 2006
Messages : 459
Points : 490
Points : 490
Envoyer un message via MSN à alexp
en utilisant les antiquotes ça devrait le faire :
__________________
Vous êtes mélomanes? allez voir harmoniedecharolles.no-ip.org
Tout est possible, tout est réalisable, le tout étant de savoir comment faire
astuces pc
gull villefranche
alexp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2008, 15h25   #4
Invité régulier
 
Développeur Java
Inscription : octobre 2007
Messages : 17
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : octobre 2007
Messages : 17
Points : 5
Points : 5
Par défaut ça marche mais...

Bonjour et grand merci! :-)

Vos solutions marchent bien!! ... dans un premier temps ... Mon programme java qui récupère ce paramètre à besoin du "absolute path" au final.

Est-ce qu'il y a un moyen simple d'obtenir le "absolute path" de './..' ( ou $UpDir)? Sinon je me contenterai de garder un paramètre à setter vers le répertoire d'installation de l'application.

Merci !
David
dasc82 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h11.


 
 
 
 
Partenaires

Hébergement Web