Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

"|dd if=/dev/zero bs=32k count=10000" /dev/null

28 réponses
Avatar
scratt
Bonjour,

Quelqu'un peut il me detailler la syntaxe de cette commande :
put "|dd if=3D/dev/zero bs=3D32k count=3D10000" /dev/null


Que j'ai trouv=E9 dans un ftp pour mesurer le debit reseau .

ftp> put "|dd if=3D/dev/zero bs=3D32k count=3D10000" /dev/null
200 Commande PORT r=E9ussie.
150 Ouverture de la connexion de donn=E9es pour /dev/null.
10000+0 enregistrements en entr=E9e.
10000+0 enregistrements en sortie.
226 Transfert termin=E9.
327680000 octets envoy=E9s en 1,867 secondes (1,714e+05 ko/s)
local : |dd if=3D/dev/zero bs=3D32k count=3D10000 distant : /dev/null
ftp>

ce qu je ne comprends pas c'est les doubles cotes et le pipe juste
avant dd.

merci

8 réponses

1 2 3
Avatar
Nicolas-MICHEL'_remove_'
Nicolas George <nicolas$ wrote:

Mais pour de la cryptographie, elles sont trop prévisibles.


Est-ce qu'il est possible de spécifier le genre de caractères qu'on
souhaite voir sortir de cette "boite à n'importe quoi" ?

Parce que pour ce que j'en ai vu, ça sort beaucoup de caractères autre
que alpha-numérique.

Ou alors peut-on convertir tout ça en chiffres de façon simple ?

Merci :)

--
Nicolas - MICHEL at bluewin point ch
AIM : michelnicolas

Avatar
Alain Montfranc
Nicolas MICHEL a écrit
Nicolas George <nicolas$ wrote:

Mais pour de la cryptographie, elles sont trop prévisibles.


Est-ce qu'il est possible de spécifier le genre de caractères qu'on
souhaite voir sortir de cette "boite à n'importe quoi" ?

Parce que pour ce que j'en ai vu, ça sort beaucoup de caractères autre
que alpha-numérique.

Ou alors peut-on convertir tout ça en chiffres de façon simple ?

Merci :)


dd if=/dev/random count=1 |od -d | cut -f2- -d' ' |sed 's/ //g'


Avatar
Stephane Chazelas
2008-04-28, 14:29(+02), Nicolas MICHEL:
Nicolas George <nicolas$ wrote:

Mais pour de la cryptographie, elles sont trop prévisibles.


Est-ce qu'il est possible de spécifier le genre de caractères qu'on
souhaite voir sortir de cette "boite à n'importe quoi" ?

Parce que pour ce que j'en ai vu, ça sort beaucoup de caractères autre
que alpha-numérique.

Ou alors peut-on convertir tout ça en chiffres de façon simple ?
[...]


Ca sort des octets aleatoires. Tu n'es pas obligé de les
considerer comme des caracteres. En shell, tu peux utiliser od,
hexdump, tr pour convertir en nombres.

tr -cd 0-9 < /dev/urandom | dd bs=5 count cbs=5 conv=unblock

Pour des nombres aleatoires entre 0 et 99999.

ou plus efficacement:

od -N20 -An -vtu2 < /dev/urandom
ou
hexdump -n 20 -e '/2 "%un"' < /dev/urandom

pour des nombres aleatoires entre 0 et 65535

(od est une commande POSIX contrairement a hexdump)

--
Stéphane


Avatar
Nicolas-MICHEL'_remove_'
Stephane Chazelas wrote:

tr -cd 0-9 < /dev/urandom | dd bs=5 count cbs=5 conv=unblock
od -N20 -An -vtu2 < /dev/urandom
hexdump -n 20 -e '/2 "%un"' < /dev/urandom
[snip]


Alain Montfranc wrote:

dd if=/dev/random count=1 |od -d | cut -f2- -d' ' |sed 's/ //g'


Super !

Merci à vous deux.
C'est pas que j'en aies besoins là tout de suite mais vu qu'on en parle,
c'est le genre de question classique à archiver :)

--
Nicolas - MICHEL at bluewin point ch
AIM : michelnicolas

Avatar
Stephane Chazelas
2008-04-28, 17:38(+02), Nicolas MICHEL:
Stephane Chazelas wrote:

tr -cd 0-9 < /dev/urandom | dd bs=5 count cbs=5 conv=unblock
od -N20 -An -vtu2 < /dev/urandom
hexdump -n 20 -e '/2 "%un"' < /dev/urandom
[snip]


Alain Montfranc wrote:
dd if=/dev/random count=1 |od -d | cut -f2- -d' ' |sed 's/ //g'


Super !

Merci à vous deux.
C'est pas que j'en aies besoins là tout de suite mais vu qu'on en parle,
c'est le genre de question classique à archiver :)


Note que awk, zsh, ksh et bash ont aussi des
pseudo-random-generators built-in, pas aussi random que
/dev/urandom toutefois.

--
Stéphane


Avatar
Thierry B.
--{ Nicolas MICHEL a plopé ceci: }--

Parce que pour ce que j'en ai vu, ça sort beaucoup de caractères autre
que alpha-numérique.

Ah, ben justement, je viens de tomber sur un truc étrange. Il est

probable que je n'ai pas les yeux en face des pixels, mais bon...
Je pensais filtrer la sortie de /dev/[u]random avec tr pour effacer
tout ce que je ne veux pas voir, mais non, tr n'est pas coopératif:

:~/RayTracing/ExpoVsition$ tr -d '[^A-Z]'
abc456YHN
abc456
:~/RayTracing/ExpoVsition$ tr -d '[A-Z]'
abc345THY
abc345

Il n'y aurait donc pas moyen d'inverser le pattern des caractères
à effacer ? Quelque chose m'échappe, là... C'est le tr du GNU.

:~/RayTracing/ExpoVsition$ tr --version
tr (coreutils) 5.2.1



--
dist location.look_at : 274.053
angle camera : 71.000
aperture : 7.500
blurs samples : 69.000

Avatar
Stephane Chazelas
2008-04-28, 21:38(+02), Thierry B.:
--{ Nicolas MICHEL a plopé ceci: }--

Parce que pour ce que j'en ai vu, ça sort beaucoup de caractères autre
que alpha-numérique.

Ah, ben justement, je viens de tomber sur un truc étrange. Il est

probable que je n'ai pas les yeux en face des pixels, mais bon...
Je pensais filtrer la sortie de /dev/[u]random avec tr pour effacer
tout ce que je ne veux pas voir, mais non, tr n'est pas coopératif:

:~/RayTracing/ExpoVsition$ tr -d '[^A-Z]'
abc456YHN
abc456


Ben oui, ca efface "[", "^", A -> Z, "]".

La syntaxe de tr, c'est

tr -cd A-Z

(parfois differente sur les vieux tr des SysV où il faut
tr -cd '[A-Z]').

:~/RayTracing/ExpoVsition$ tr -d '[A-Z]'
abc345THY
abc345

Il n'y aurait donc pas moyen d'inverser le pattern des caractères
à effacer ? Quelque chose m'échappe, là... C'est le tr du GNU.
[...]


Quoi a propos lire la page de l'homme?

--
Stéphane


Avatar
Thierry B.
--{ Stephane Chazelas a plopé ceci: }--


Il n'y aurait donc pas moyen d'inverser le pattern des caractères
à effacer ? Quelque chose m'échappe, là... C'est le tr du GNU.


Quoi a propos lire la page de l'homme?

Oui, bon, ça va... Je n'avais effectivement pas les yeux (ni les

neurones) bien callés hier soir, et je me suis un peu braqué vers
les regexps, alors que tr, c'est pas pareil :)


--
{ SIGOGNE, "OUIIIN" },
/* Gives the process a child */
--{ f.m.b.l revisite la command kill }--


1 2 3