IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Choisir un fichier au hasard dans un répertoire


Sujet :

Linux

  1. #1
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 465
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 465
    Points : 4 312
    Points
    4 312
    Par défaut Choisir un fichier au hasard dans un répertoire
    Bonsoir tout le monde

    Je cherche, dans un bash, à choisir un fichier au hasard parmi plusieurs fichiers, tous contenus dans un même répertoire. J'ai déjà fait quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    #!/bin/bash
     
    echo *.snd
    exit 0
    Qui évidemment me sort la liste des fichiers *.snd, mais ne me retourne pas un fichier au hasard. Avez-vous une idée de la façon dont faire ça ?

    Merci d'avance !

  2. #2
    Membre habitué Avatar de tony montana
    Profil pro
    Inscrit en
    Février 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 114
    Points : 136
    Points
    136
    Par défaut
    salut,
    tu peux utiliser un random pour prendre au hasard 1 de tes fichiers.
    pour le random :
    ensuite il faut utiliser modulo (%) pour avoir un chiffre dans l'intervalle de valeurs souhaité...

    ensuite je vois 2 possibilités :
    tu fais un ls pour lister tes fichiers, tu prend une ligne au hasard (qui est donc 1 nom de fichier) et l'affaire est reglée

    tu récupère tes fichiers dans un tableau, et tu fais un random pour obtenir un indice, et tu récupère l'élément du tableau qui a cet indice.

  3. #3
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 465
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 465
    Points : 4 312
    Points
    4 312
    Par défaut
    Merci ca marche en bidouillant un peu Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #!/bin/bash
     
    line=$(($RANDOM%`ls /etc/sound/*.snd | wc -l`))
    line=$((line + 1)) 
     
    ls /etc/sound/*.snd | nl | while read a b
    do
      [ "$a" = "$line" ] && { /etc/sound/sound "$b"; break; }
    done
     
    exit 0
    Donc dans un premier temps, ca récupère le nombre de ligne du ls, c'est-à-dire le nombre de fichier du répertoire, puis fais un random dessus, on obtient un nombre entre 0 et nombreFichier - 1. On y ajoute 1 puisque nl numérote les lignes à partir de 1. Ensuite on numérote les lignes avec nl puis on fait une boucle qui regarde pour chaque ligne si le numéro de la ligne est égal au nombre tiré aléatoirement plus haut. Si c'est égal on exécute /etc/sound/sound avec en paramètre le nom du fichier tiré aléatoirement.

    Merci beaucoup à Tony Montana

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Choisir un élément au hasard dans un tableau
    Par contre dans le forum Pascal
    Réponses: 5
    Dernier message: 23/05/2012, 21h55
  2. Choisir un element au hasard dans une ArrayList
    Par zemzoum89 dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 19/11/2010, 22h10
  3. Choisir la page a afficher dans un fichier PDF
    Par PimpW dans le forum Delphi
    Réponses: 3
    Dernier message: 01/09/2006, 16h07
  4. [Conception] Choisir un pseudo au hasard dans une base de données
    Par ok07 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 20/08/2006, 17h05
  5. Choisir un élément au hasard dans un tableau
    Par ousunas dans le forum Langage
    Réponses: 1
    Dernier message: 25/02/2006, 19h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo