Récupérer une information pour s'en servir comme variable
Fermé
charline159
Messages postés
208
Date d'inscription
lundi 14 août 2017
Statut
Membre
Dernière intervention
22 juin 2022
-
Modifié le 2 mai 2021 à 17:43
jee pee Messages postés 39504 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 28 mars 2024 - 5 mai 2021 à 14:05
jee pee Messages postés 39504 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 28 mars 2024 - 5 mai 2021 à 14:05
A voir également:
- Récupérer une information pour s'en servir comme variable
- Recuperer video youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Recuperer message whatsapp - Guide
- Comment récupérer une adresse mail - Guide
- Récupérer photo instagram - Guide
3 réponses
jee pee
Messages postés
39504
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
28 mars 2024
9 205
Modifié le 2 mai 2021 à 19:20
Modifié le 2 mai 2021 à 19:20
Bonjour,
Pour moi avec xargs cela fonctionne. Mais si tu veux le contenu du fichier dans une variable tu peux aussi faire :
Pour moi avec xargs cela fonctionne. Mais si tu veux le contenu du fichier dans une variable tu peux aussi faire :
linuxlite ~ cat file.txt|xargs echo
3
linuxlite ~ va=$(cat file.txt) && echo $va
3
jee pee
Messages postés
39504
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
28 mars 2024
9 205
Modifié le 2 mai 2021 à 20:00
Modifié le 2 mai 2021 à 20:00
Ta commande en elle même renvoie déjà un résultat, xargs n'apporte rien sauf si tu rajoutes autre chose
je suis en bash
linuxlite ~ cat file.txt | sort | uniq -c | sort | tail -n 1 | sed 's/ *//' | cut -c 1
1
linuxlite ~ cat file.txt | sort | uniq -c | sort | tail -n 1 | sed 's/ *//' | cut -c 1|xargs echo
1
linuxlite ~ cat file.txt | sort | uniq -c | sort | tail -n 1 | sed 's/ *//' | cut -c 1|echo "hello"
hello
linuxlite ~ 0 0 0 0 0 0 141 0 cat file.txt | sort | uniq -c | sort | tail -n 1 | sed 's/ *//' | cut -c 1|xargs echo "hello"
hello 1
je suis en bash
charline159
Messages postés
208
Date d'inscription
lundi 14 août 2017
Statut
Membre
Dernière intervention
22 juin 2022
1
5 mai 2021 à 13:09
5 mai 2021 à 13:09
Oui, en soit le echo ne rajoute rien, c'était juste un exemple pour illustrer ce que je souhaite faire: prendre le résultat affiché (par exemple, "3") pour m'en servir comme variable, par exemple dans une boucle:
for i in $(xargs); echo hello; done
jee pee
Messages postés
39504
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
28 mars 2024
9 205
Modifié le 5 mai 2021 à 13:27
Modifié le 5 mai 2021 à 13:27
la variable dans la boucle c'est ${i}
linuxlite ~ cat file.txt
aaa
bbb
ccc
linuxlite ~ cat file.txt|for i in $(xargs); do echo -n "${i} "; done
aaa bbb ccc
linuxlite ~ cat file.txt|for i in $(xargs); do echo hello ; done
hello
hello
hello
jee pee
Messages postés
39504
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
28 mars 2024
9 205
>
jee pee
Messages postés
39504
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
28 mars 2024
5 mai 2021 à 14:05
5 mai 2021 à 14:05
ou aussi
linuxlite ~ echo 33|xargs -i echo {}
33
2 mai 2021 à 19:27
Effectivement, ça fonctionne dans le cas simple que je donne en exemple, c'est-à-dire en faisant :
mais par contre si je fais un traitement à partir d'un fichier, par exemple si je souhaite récupérer le chiffre à partir d'un enchaînement de cat, sort, uniq, sed, cut, comme ceci:
je n'arrive pas à réuiliser le chiffre en sortie, avec : ça ne marche pas.
Pourquoi est-ce que ça marcherait dans certains cas et pas dans d'autres?
(Et pour la boucle, ça ne fonctionne vraiment pas chez moi. J'ai peut-être fait une erreur dans sa syntaxe.)