Salut,
Je voudrais savoir s'il existe un moyen simple de créer un répertoire avec la date du jour?
Par avance merci
Salut,
Je voudrais savoir s'il existe un moyen simple de créer un répertoire avec la date du jour?
Par avance merci
fonction mkdir() afin de créer le répertoire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 use Date::Calc qw(Today); my ($year,$month,$day) = Today([1]);
Tu peux aller voir les codes souces sur les dates de ce forum
Merci!
Malheureusement cela ne fonctionne pas avec ta méthode:
Can't locate Date/Calc.pm in @INC (@INC contains: /usr/local/perl5.8.5/lib/5.8.5/sun4-solaris /usr/local/perl5.8.5/lib/5.8.5 /usr/local/ ..........
j'imagine que cela dire que le module n'est pas installé sur la machine. Et comme je ne suis pas master de cette machine et que je ne peux installé de nouveau module, j'ai tenté avec le lien que tu m'as fourni et c'est nickel!
je procède comme ceci:
encore merci
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
25
26
27
28 #Create the folder with the current date my $RefDateActuelle = date(); # On recupere la réference d'un hash my $time = 1234567890; my $RefAutreDate = date($time); # On recupere la réference d'un hash mkdir ("$root"."$RefDateActuelle->{date}/") or die "impossiblle to create the current date folder.\n"; sub date { my $time = shift || time; #$time par defaut vaut le time actuel my ( $seconde, $minute, $heure, $jour, $mois, $annee, $jour_semaine, $jour_annee, $heure_hiver_ou_ete ) = localtime($time); $mois += 1; $annee += 1900; # On rajoute 0 si le chiffre est compris entre 1 et 9 foreach ( $seconde, $minute, $heure, $jour, $mois, $annee ) { s/^(\d)$/0$1/; } my %date = ( "date" => "$jour-$mois-$annee", "heure" => "$heure:$minute:$seconde", "jour_semaine" => $jour_semaine, "jour_annee" => $jour_annee, "hiverOuEte" => $heure_hiver_ou_ete, ); return \%date; }
j'avais juste une dernière question
à quoi sert le:
est-ce nécessaire dans mon cas? je comprends pas bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 my $time = 1234567890; my $RefAutreDate = date($time); # On recupere la réference d'un hash
Une façon simple de créer des chaines de caractères à partir d'éléments de date (pour un nom de fichier ou de répertoire par exemple), est la fonction POSIX strftime, qui fonctionne comme sprintf :
Inutile d'installer de module, POSIX est dans le Core de Perl depuis la version 5.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 use POSIX qw(strftime); $dir = strftime "%Y_%m_%d", localtime; # resultat : 2010_02_08
Pour obtenir le manuel des formats de strftime, consulter le manuel unix de la commande strftime.
Je pense que c'est en rapport avec epoch : FAQ perl
Code : Sélectionner tout - Visualiser dans une fenêtre à part my $time = 1234567890;
L'epoch (de l'anglais époque ou ère) représente la date initiale à partir de laquelle est mesuré le temps par les systèmes d'exploitation.Tu passes $time en argument à la fonction 'date' qui te renvoie la valeur de $RefAutreDate (la référence vers ton hash voir FAQ )
Code : Sélectionner tout - Visualiser dans une fenêtre à part my $RefAutreDate = date($time); # On recupere la réference d'un hash
merci à tous
Attention, $time dans le code est juste un exemple. Dans ton cas, si tu as besoin de la date actuelle, ne mets pas de time.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 my $RefAutreDate = date(); # On recupere la réference d'un hash
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager