A voir également:
- Sous shell lorsqu'on fait un pipe?
- Classic shell windows 11 - Télécharger - Personnalisation
- Shell startup windows 10 - Guide
- Pipe informatique - Forum Matériel & Système
- Pipe clavier - Forum Windows
- Efi shell version 2.31 - Forum Programmation
9 réponses
J'ai créé un script "essai.sh" pour tester:
Et voici le résultat que j'obtiens:
#!/bin/bash echo $RANDOM echo $RANDOM echo $RANDOM | cat echo $RANDOM | cat echo $RANDOM echo $RANDOM
Et voici le résultat que j'obtiens:
$ ./essai.sh 1662 10022 6291 6291 6291 10791
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 419
21 oct. 2011 à 16:05
21 oct. 2011 à 16:05
Salut,
Idem pour moi, comme mes collègues mamiemando et dubcek, pas de problème ;-)
Est-ce qu'avec "cat <<<$RANDOM" à la place de "echo $RANDOM | cat" tu as toujours le même résultat ?
Idem pour moi, comme mes collègues mamiemando et dubcek, pas de problème ;-)
Est-ce qu'avec "cat <<<$RANDOM" à la place de "echo $RANDOM | cat" tu as toujours le même résultat ?
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
Modifié par mamiemando le 23/10/2011 à 19:23
Modifié par mamiemando le 23/10/2011 à 19:23
Une méthode plus violente qui pourrait marcher et basée sur /dev/random :
http://www.christopher.compagnon.name/sitewww/shell-gennumber.html
.. car pour moi la réinitialisation de $RANDOM dépend de ton shell, tandis que /dev/random est gérée par des couches plus basses.
Bonne chance
http://www.christopher.compagnon.name/sitewww/shell-gennumber.html
.. car pour moi la réinitialisation de $RANDOM dépend de ton shell, tandis que /dev/random est gérée par des couches plus basses.
Bonne chance
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
21 oct. 2011 à 10:17
21 oct. 2011 à 10:17
Pour ma part :
Du coup je n'ai pas compris le problème.
(mando@aldur) (~) $ echo $RANDOM 26483 (mando@aldur) (~) $ echo $RANDOM 22861 (mando@aldur) (~) $ echo $RANDOM | cat 32160 (mando@aldur) (~) $ echo $RANDOM | cat 16745 (mando@aldur) (~) $ echo $RANDOM | cat 15298
Du coup je n'ai pas compris le problème.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
21 oct. 2011 à 15:51
21 oct. 2011 à 15:51
hello
j'ai des résultats différents
j'ai des résultats différents
$ cat f1 #!/bin/bash echo $RANDOM echo $RANDOM echo $RANDOM | cat echo $RANDOM | cat echo $RANDOM echo $RANDOM $ ./f1 5393 14970 816 27615 9518 31088 $
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
21 oct. 2011 à 16:42
21 oct. 2011 à 16:42
autre exemple
$ seq 1 10 | xargs -L1 bash -c "echo $RANDOM" 7593 7593 7593 7593 7593 7593 7593 7593 7593 7593 $ $ seq 1 10 | xargs -L1 bash -c 'echo $RANDOM' 8097 13743 12160 24067 17692 28401 15929 2341 31589 7570 $
Flachy Joe
Messages postés
2103
Date d'inscription
jeudi 16 septembre 2004
Statut
Membre
Dernière intervention
21 novembre 2023
260
Modifié par Flachy Joe le 21/10/2011 à 19:20
Modifié par Flachy Joe le 21/10/2011 à 19:20
Là c'est plutôt normal :
- dans le premier cas la chaîne entre guillemets est interprété une seule fois par le shell puis passé à bash qui reçoit alors toujours la même chaîne.
- alors que dans le second cas elle n'est pas interprété par le shell mais par le bash appelé.
- dans le premier cas la chaîne entre guillemets est interprété une seule fois par le shell puis passé à bash qui reçoit alors toujours la même chaîne.
- alors que dans le second cas elle n'est pas interprété par le shell mais par le bash appelé.
cat <<<$RANDOM me donne également le même résultat à chaque fois!!
En fait j'ai posté ici pour essayer de comprendre pourquoi mon shell agit de cette façon, mais oui je pourrais m'en sortir avec /dev/random ou autre.
Auriez vous une idée de ce qui pourrait causer ces résultats? Je ne trouve pas:\
En fait j'ai posté ici pour essayer de comprendre pourquoi mon shell agit de cette façon, mais oui je pourrais m'en sortir avec /dev/random ou autre.
Auriez vous une idée de ce qui pourrait causer ces résultats? Je ne trouve pas:\
Je viens de m'apercevoir que quand je lance un nouveau shell, cela fonctionne! j'ai bien des résultats différents!
Par contre des que je fais un simple echo $RANDOM, je reviens à ma situation anormale!
Voyez vous même...
essai.sh
essai2.sh
Comment est-ce possible?
Avez vous les mêmes résultats ?
Par contre des que je fais un simple echo $RANDOM, je reviens à ma situation anormale!
Voyez vous même...
essai.sh
#!/bin/bash cat <<<$RANDOM cat <<<$RANDOM cat <<<$RANDOM echo $RANDOM echo $RANDOM cat <<<$RANDOM cat <<<$RANDOM cat <<<$RANDOM $ ./essai.sh 12634 387 31718 16059 7528 21592 21592 21592
essai2.sh
#!/bin/bash echo $RANDOM | cat echo $RANDOM | cat echo $RANDOM | cat echo $RANDOM echo $RANDOM echo $RANDOM | cat echo $RANDOM | cat echo $RANDOM | cat $ ./essai2.sh 32552 31451 18744 16255 16297 11011 11011 11011
Comment est-ce possible?
Avez vous les mêmes résultats ?
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
25 oct. 2011 à 08:09
25 oct. 2011 à 08:09
quelle version du shell ?
bash --version
dubcek
Messages postés
18758
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
24 décembre 2024
5 623
25 oct. 2011 à 13:15
25 oct. 2011 à 13:15
j'ai
peut-être une explication
$ bash --version GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu)
peut-être une explication
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
25 oct. 2011 à 19:40
25 oct. 2011 à 19:40
Même version que dubcek en ce qui me concerne. C'est pour ça que je t'invite à utiliser une solution basée sur /dev/random plutôt que $RANDOM qui est dépendant du shell (ici la version).
mamiemando
Messages postés
33446
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
20 décembre 2024
7 812
26 oct. 2011 à 20:05
26 oct. 2011 à 20:05
Pourquoi tu n'essaies pas comme je te l'ai déjà suggéré une solution basée sur /dev/random ?
https://forums.commentcamarche.net/forum/affich-23445271-sous-shell-lorsqu-on-fait-un-pipe#9
Bonne chance
https://forums.commentcamarche.net/forum/affich-23445271-sous-shell-lorsqu-on-fait-un-pipe#9
Bonne chance