[Shell Bash]Recuperer un resultat du find

sl1f3r Messages postés 3 Statut Membre -  
blux Messages postés 27827 Statut Modérateur -
Bonjour,
Je veux rechercher un fichier grâce a la commande find et ensuite stocker le résultat dans une variable, ça j'y arrive, mais quand le find me renvoie plusieurs résultats ça me met le premier dans ma variable et ce n'est pas nécessairement celui que je veux.
Comment faire ???

fichier=`find /home/ -name $1 -print`
ça c'est mon bout de code qui fait ce que je viens de vous décrire.
A voir également:

6 réponses

blux Messages postés 27827 Statut Modérateur 3 363
 
Salut,

il faut déjà décider lequel tu voudras quand plusieurs te seront renvoyés, et sur quel critère tu vas estimer que c'est le bon...
1
blux Messages postés 27827 Statut Modérateur 3 363
 
Sinon, pour récupérer la n ième ligne d'un fichier tu peux combiner tail et head.

tail +n fichier|head -1
1
Char Snipeur Messages postés 10112 Statut Contributeur 1 299
 
ou alors, on peut les concaténerdans la variable, un peux comme un PATH, Blux.
regarde le man de find pour formater la sortie comme tu souhaite. -printf semble l'option qu'il te faut.
0
sl1f3r Messages postés 3 Statut Membre
 
en réponse a blux, j'ai mis -print dans mon find de manière a afficher tout les résultats, pour choisir je pourrais mettre un variable dans laquelle je mettrais le numéro de la ligne

par exemple en resultat du find :
/.../.../.../monfichier
/.../monfichier
/.../.../monfichier

en fait ma question est : comment récupérer le deuxième par exemple
0

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

Posez votre question
sl1f3r Messages postés 3 Statut Membre
 
J'ai essayer autre chose mais la encore j'ai un probleme.
J'ai envoyé le resultat de mon find dans un txt et ensuite j'aimerais recuperer une ligne, par exemple la premiere et la mettre dans une variable.
Comment faire ?
0
Char Snipeur Messages postés 10112 Statut Contributeur 1 299
 
Blux a raison, ça n'a pas de sens de récupérer le premier. Si c'est toujours le premier que tu veux récupérer, c'est qu'il y a une logique et que donc tu peux avoir un critère.
0