Forum Clubic

Copie d'un fichier aléatoire sous linux dans un script

Bonjour,

Dans mon dossier du jeu, j’ai un fichier qui s’appelle everytime.cfg. Ce fichier charge les cartes du jeu, et d’autres paramètres.
J’ai un sous-dossier appelé maps. Dans ce dossier, je vais mettre un certain nombre de fichiers “everytime.cfg” avec des noms différents.

Je crée ensuite un script qui va être exécuté a intervalle régulier par cron.

J’aimerais que ce script prenne au hasard un des fichiers du dossier maps et le copie en écrasant le fichier everytime.cfg

Comment puis-je m’y prendre ?

Bah, si tu fait tourner ton script par Cron, logiquement c’est du Bash oui Sh. Alors, je ne la connais pas, mais il y a $RANDOM qui génère un nombre pseudoaléatoire compris entre 0 et 32767 : tldp.org…

Tout ce que tu a à faire, c’est récupérer la liste de tes fichiers cfg sous forme de liste, et d’aller taper à la case dont la valeur correspond via une règle de 3 entre 32767 et ta longueur de liste à la valeur du $RANDOM. Tu recopie ce fichier…

Hello. Je t’ai jamais remercié pour ta réponse, alors voilà :slight_smile: Merci

Voici mon script:

#!/bin/bash
RANDOM=`date '+%s'`

x=$[$RANDOM % 2]

rm /home/akim/arma/servers/fightnow/settings/everytime.cfg
cp /home/akim/arma/servers/fightnow/settings/everytime.$x /home/akim/arma/servers/fightnow/settings/everytime.cfg

Il marche a merveille.