Comment créer un nouveau fichier et le remplir avec 1 Go de données aléatoires? J'ai besoin de cela pour tester certains logiciels.
Je préférerais utiliser /dev/random
ou /dev/urandom
.
Comment créer un nouveau fichier et le remplir avec 1 Go de données aléatoires? J'ai besoin de cela pour tester certains logiciels.
Je préférerais utiliser /dev/random
ou /dev/urandom
.
Réponses:
Sur la plupart des unices:
head -c 1G </dev/urandom >myfile
Si vous head
ne comprenez pas le G
suffixe, vous pouvez spécifier la taille en octets:
head -c 1073741824 </dev/urandom >myfile
Si vous head
ne comprenez pas l' -c
option (c'est courant mais pas POSIX; vous avez probablement OpenBSD):
dd bs=1024 count=1048576 </dev/urandom >myfile
Ne pas utiliser /dev/random
sous Linux, utilisez /dev/urandom
.
head
ne comprend pas -c
sur mon ordinateur Solaris 10.
head
peut lire /dev/urandom
, mais tail
ne peut pas.
tail
tente d'abord d'aller à la fin du fichier d'entrée, ce qui prend une éternité (littéralement).
/dev/zero
aussi, si vous n'aimez pas la variété.
En supposant que les données pseudo-aléatoires suffisent, vous dd if=/dev/urandom of=target-file bs=1M count=1000
ferez ce que vous voulez.
dd (1) lira des blocs de données d'un fichier d'entrée et les écrira dans un fichier de sortie. Le langage de ligne de commande est un peu bizarre, mais c’est l’un de ces outils vraiment utiles qui valent la peine d’être maîtrisés.
Dans ce cas if
, le fichier d'entrée, le fichier de of
sortie, bs
correspond à la "taille du bloc" - et j'ai utilisé l'extension GNU pour définir la taille plus facilement. (Vous pouvez également utiliser 1048576 si vous dd
n'avez pas l'extension GNU.) count
Est le nombre de blocs à lire if
et à écrire of
.
/dev/urandom
C'est un meilleur choix que /dev/random
parce que , sous Linux, il retombera sur des données pseudo-aléatoires fortes plutôt que de bloquer lorsque des données réellement aléatoires sont épuisées.
Vous pouvez également vouloir regarder http://www.random.org/ comme un autre moyen d’obtenir des données aléatoires sans avoir à les générer vous-même.
1M
ne sont pas disponibles dans toutes les dd
variantes standard . Si votre version de dd
est affectée, utilisez bs=1048576
.
while true;do head /dev/urandom | tr -dc A-Za-z0-9;done | head -c 5000K | tee 5000kb
Utilisé pour générer 5 Mo de données de caractères aléatoires. Si vous avez besoin d'une taille différente, changez la -c
valeur de head, changez le nom du fichier de sortie, exécutez-le et attendez la fin de l'exécution.
vi
avecvi -w randomfile
et demandez à quelqu'un qui n'a jamais été vuvi
de quitter le programme. ;)