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

Scripts/Batch Discussion :

Sortir un mot aléatoire a partir d'un fichier txt [Batch]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 140
    Par défaut Sortir un mot aléatoire a partir d'un fichier txt
    Bonjour, Comment faire un petit batch qui sort aléatoirement une ligne d'un fichier texte (un mot par ligne dans le txt)?
    Merci a+

  2. #2
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    @echo off
    setlocal enableextensions
    
    if "%1"=="" goto help
    
    REM Compter le nombre de lignes avant tout.
    set nblines=0
    for /F "delims=" %%I in ('type %1') do set /a nblines+=1
    REM Récupérer une ligne au hasard (random modulo nombre de lignes du fichier).
    set /a line=%RANDOM% %% %nblines%
    REM Parcours du fichier d'origine, en sautant "line" lignes.
    for /F "skip=%line% delims=" %%I in ('type %1') do (
    	REM Sortie de la ligne.
    	echo %%I
    	REM Arrêt de la boucle, pour ne pas sortir les lignes suivantes.
    	goto :break
    )
    :break
    goto :eof
    
    :help
    echo Syntax : %0 ^<File^>
    echo Will extract a random line from the file.
    goto :eof
    Le batch est directement utilisable, et envoie une ligne aléatoire du fichier passé en paramètre sur la sortie standard.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

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

Discussions similaires

  1. Lire des lettres aléatoirement à partir d'un fichier .txt
    Par selma89 dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 15/09/2011, 13h51
  2. Réponses: 2
    Dernier message: 26/01/2007, 14h58
  3. Réponses: 3
    Dernier message: 08/08/2006, 02h50
  4. Réponses: 4
    Dernier message: 19/03/2006, 15h20
  5. Réponses: 4
    Dernier message: 27/07/2005, 11h51

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