Rechercher : dans
Par :

[Shell Bash]Recuperer un resultat du find

Dernière réponse le 15 déc 2008 à 09:26:52 sl1f3r, le 12 déc 2008 à 13:12:29 
 Signaler ce message aux modérateurs

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.

Configuration: Linux
Firefox 3.0.4

Meilleures réponses pour « [Shell Bash]Recuperer un resultat du find » dans :
Comment récupérer le résultat d'une commande dans une variable Voir Comment récupérer le résultat d'une commande dans une variable Préambule Syntaxe Exemples Préambule Il est bien souvent nécessaire de récupérer le résultat d'une commande (ou de son code retour) dans une variable afin de pouvoir...
Guide d'utilisation du Shell pour débutant VoirSHELL BASH - GUIDE D'UTILISATION - Niveau Débutant Introduction Appel aux membres CCM II. C'est quoi le shell ? III. Comment accéder à la ligne de commande IV. Les consoles virtuelles Exemple : Accéder à la console 3 depuis l'interface...
Le remplacement de variables en shell Bash VoirLe remplacement de variables Introduction Il peut s'avérer utile de s'assurer qu'une variable est bien définie avant de procéder à son remplacement, ou tout simplement de s'assurer que celle-ci n'est pas vide, et dans ce cas de l'initialiser avec...
Coloration du shell (bash) VoirPourquoi le faire? Quelles informations peuvent être transmises par les couleurs? Les techniques Technique de tput Pourquoi le faire? En personnalisant la couleur des caractères de l'invite (ou du shell), vous la rendez plus lisible. Si...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...

1

blux, le 12 déc 2008 à 13:17:51
  • +1

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...

A+ Blux           

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

2

Char Snipeur, le 12 déc 2008 à 16:04:22

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. Salutation !
Char Snipeur

Répondre à Char Snipeur

3

sl1f3r, le 12 déc 2008 à 17:31:45

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

Répondre à sl1f3r

4

sl1f3r, le 13 déc 2008 à 09:43:53

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 ?

Répondre à sl1f3r

5

Char Snipeur, le 15 déc 2008 à 09:04:00

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. Salutation !
Char Snipeur

Répondre à Char Snipeur

6

 blux, le 15 déc 2008 à 09:26:52
  • +1

Sinon, pour récupérer la n ième ligne d'un fichier tu peux combiner tail et head.

tail +n fichier|head -1

A+ Blux           

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux