#1 Le 27/08/2013, à 20:59
- nurit1
Probleme avec find et cd [RESOLU]
Bonjours,
J'écris un fichier bash qui doit trouvé un fichier (dans mon cas un .java) et après l'avoir trouvé grace a find il doit s'y rendre. En effet si j'execute immediatement le fichier java il créera des fichiers où se trouve l'utilisateur c'est a dire là où il a lancé le programme de recherche or je veux que l'utilisateur soit emmener, avant l'execution, dans le même repertoire du fichier rechercher. Mais même avec des pipes (avec lesquelles j'ai un peu de mal) je n'arrive a rien car malheureusement cd a besoin du repertoire, et $VARIABLE=`find...` donne le chemin jusqu'au fichier mais pas son repertoire donc je n'arrive pas a les combiner. Donc j'espere que vous saurez m'aider. merci d'avance
Dernière modification par nurit1 (Le 27/08/2013, à 22:35)
Hors ligne
#2 Le 27/08/2013, à 21:05
- Hizoka
Re : Probleme avec find et cd [RESOLU]
var=$(find ...)
var="${var%/*}"
par ex.
bien que je pense que find puisse renvoyer directement le dossier.
EDIT :
l'option "-execdir commande" de find ne t'irait pas justement ?
Semblable à -exec, sauf que la commande indiquée sera exécutée à partir du sous-répertoire contenant
le fichier correspondant, qui n'est normalement pas celui à partir duquel vous avez lancé find. C'est
une méthode bien plus fiable d'invocation de commande, puisqu'elle évite des conflits de résolution
de chemins des fichiers trouvés....
et -printf "%h\n" pour faire afficher le dossier directement par find
find "dossier" -iname "fichier" -printf "%h\n"
Dernière modification par Hizoka (Le 27/08/2013, à 21:11)
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#3 Le 27/08/2013, à 21:16
- nurit1
Re : Probleme avec find et cd [RESOLU]
Ouiii voila c'est exactement cela.
Donc find $HOME -name "<Fichier>" -execdir -java jar alors?
Je pensais pourtant avoir bien lu le man de find car justement je pensais qu'il devais forcement proposé une solution.
Hors ligne
#4 Le 27/08/2013, à 21:19
- nurit1
Re : Probleme avec find et cd [RESOLU]
ou bien
VAR=`find "dossier" -iname "fichier" -printf "%h\n" `
cd $VAR
=S
Hors ligne