Forum Programmation.shell Créer un fichier d'une taille donnée.

Posté par  .
Étiquettes : aucune
0
5
sept.
2005
Pr les besoins d'un projet je voudrais pouvoir créer des fichiers d'une certaine taille par exemple 1Mo, 10 Mo, 100 Mo etc... pour tester la saturation de certains reperoires et voir comment réagit l'appli.

Comment puis je faire pr créer des fichiers de la sorte ?
Peux importe le contenu des fichiers seule la taille nous intéresse.

Merci pour votre aide.
  • # dd

    Posté par  (site web personnel) . Évalué à 10.

    dd if=/dev/zero of=toto count=1 bs=1M
    • [^] # Re: dd

      Posté par  (site web personnel) . Évalué à 0.

      ou en perl :

      perl -w -e 'print "0"x1024x1024' > fichier.txt
    • [^] # Re: dd

      Posté par  (site web personnel) . Évalué à 0.

      Le bs=1 est peut-etre un peu violent (lent).

      Sinon, pour que le fichier ne prenne pas trop de place réelle sur le disque, le mieux est peut-etre un petit programme C qui fait juste un appel a ftruncate, ou d'utiliser qemu-img create. Sur les FS comme ext2/3, le fichier créé de cette manière ne prendra que quelques ko sur le disque tant qu'on n'essaiera pas d'ecrire dessus.
      • [^] # Re: dd

        Posté par  (site web personnel) . Évalué à 1.

        Non, pas taper ! Désolé, j'ai fait l'impasse sur le 'M' dans 'bs=1M', je retire donc ce que j'ai dit sur la leeeenteur : c'est faux.
      • [^] # Re: dd

        Posté par  . Évalué à 3.

        Oui mais malheureusement ca ne marche que si tu es sur un système en ext2/3fs, la commande proposée avec dd marche quelque soit le FS sous-jacent (mon cas jfs).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.