Flux rss
Collection CommentÇaMarche.net
Rechercher : dans
Par :

Rename des fichiers avec la date sous Linux 2

baborge, le dimanche 5 mars 2006 à 11:56:23 
 Signaler ce message aux modérateurs

Salut a tous

vous m'avez aider
a renommer tous les fichiers d'un répertoire sous LINUX avec une commande en shell:

#! /usr/bin/perl -w

use strict;

my ($jour,$mois,$annee)=(localtime)[3,4,5];

my $j = sprintf("%02d",$jour);
my $m = sprintf("%02d",$mois+1);
my $a = $annee+1900;

my @fic = glob "/home/ovh/sauveDB/*.sql"; 
foreach (@fic){
        (my $new_name = $_)=~ s/(\d+)(\.sql)/$1_$a-$m-$j$2/;
        rename $_,$new_name;
}


mais lors de ma demande, je n'avais préciser que les fichiers sont sous la forme :

1.sql
2.sql
...
100.sql



alors que j'ai d'autres fichiers dans ce répertoire:

mysql.sql
compteur.sql
etc...


et la commande précédante ne les prends pas en compte...

pouvez vous me donner un coup de main supplémentaire...

Merci d'avance

laurent

1

lami20j, le dimanche 5 mars 2006 à 13:24:43

Salut,

#! /usr/bin/perl -w

use strict;

my ($jour,$mois,$annee)=(localtime)[3,4,5];

my $j = sprintf("%02d",$jour);
my $m = sprintf("%02d",$mois+1);
my $a = $annee+1900;

#my @fic = glob "/home/ovh/sauveDB/*.sql"; pas besoin

foreach (glob "/home/ovh/sauveDB/*.sql"){
 (my $new_name = $_)=~ s/^    # début de chaine
                         (.*) # tout caractère 
                         (?=\.sql)
			      # test avant .sql (ne consomme pas de texte)
                        /$1_$a-$m-$j/x;
        rename $_,$new_name;
}

Répondre à lami20j

2

baborge, le dimanche 5 mars 2006 à 13:33:05

Re

Merci lami20j

tout marche super

@+

laurent

Répondre à baborge

3

lami20j, le dimanche 5 mars 2006 à 13:41:44

Re,

de rien.

Petite question. As-tu compris la pourquoi ton regex ne te satisfaisait pas?

s/(\d+)(\.sql)/$1_$a-$m-$j$2/


Et celui là oui?
s/^      # début de chaine
    (.*) # tout caractère 
    (?=\.sql)
     # test avant .sql (ne consomme pas de texte)
 /$1_$a-$m-$j/x;


C'est bien de comprendre pourqoui et aussi d'étudier tout les cas puisque la regex que je t'ai donné n'est pas parfaite.

Comment se comportera elle sur des fichiers dont le nom est

aaa.SQL

ou

aaa.sql.sql

ou encore

01.sql.02.sql

?

Même si tu dit que ça ne serez pas le cas, on ne sait jamais.
A toi de voir.

Répondre à lami20j

4

 lami20j, le dimanche 5 mars 2006 à 16:38:46

Re,

voilà encore un version dans laquelle on n'a pas des références arrières. Un seul test avant pour tester l'extension fait l'affaire.

#! /usr/bin/perl -w

use strict;

foreach (glob "/home/ovh/sauveDB/*.sql"){
  (my $new_name = $_)=~ s/(?=\.sql)/'_' . `date +%F`/e;
  $new_name =~ s/\n//; # le résultat de date contient un \n
  rename $_,$new_name;
}

Répondre à lami20j
Fichier DAT Format DAT Un fichier DAT Un fichier .dat est un fichier de données (.DAT signifie data). En général, il s'agit d'un fichier binaire, créé par un programme et utilisable uniquement par ce programme, ce qui signifie qu'il n'est pas censé être ouvert... www.commentcamarche.net/contents/fichier/dat.php3
Recherche codec pour fichier .DAT (Résolu) bonjour a tous pourriez vous m'indiquer le codec compatible pour lire les fichiers .DAT merci d'avance www.commentcamarche.net/forum/affich-1427321-recherche-codec-pour-fichier-dat
Récupérer fichiers .dat supprimés (Résolu) J'ai acheté un lecteur mp3 sony récemment, mais en effaçant des musiques, j'ai également supprimé des fichiers .dat, et depuis je ne peux plus lire mes chansons, cela marque "NO DATA"... J'ai cherché dans la corbeille mais malheureusement les fichiers... www.commentcamarche.net/forum/affich-2756112-recuperer-fichiers-dat-supprimes
L'arborescence du système de fichiers de LinuxLinux possède de nombreux répertoires, et ils ont chacun leur rôle. (Note: D'une distribution à l'autre, ces répertoires peuvent être différents.) Sous Windows, un fichier est un fichier. Sous Linux, un fichier peut représenter: un fichier, un... www.commentcamarche.net/faq/sujet-6353-l-arborescence-du-systeme-de-fichiers-de-linux
[Mozilla Thunderbird] Fichier winmail.datSymptôme : Un correspondant vous envoie un mail avec une pièce jointe, mais celle-ci n'apparait pas dans le mail : il n'y a qu'un fichier winmail.dat attaché. Explication : Ce problème survient lorsque votre correspondant vous expédie un mail au... www.commentcamarche.net/faq/sujet-2120-mozilla-thunderbird-fichier-winmail-dat
[Linux] Compresser/Décompresser un fichier ZIPLes fichiers ZIP sont généralement destinés à un usage sous Microsoft Windows. Le format de compression privilégié sous Linux est GZip (.gz) ou le format Tarball (.tar.gz). Il est néanmoins possible de compresser et décompresser des fichiers ZIP à... www.commentcamarche.net/faq/sujet-955-linux-compresser-decompresser-un-fichier-zip
Ouvrir un fichier DAT ? (Résolu)Bonsoir à tous, Mon premier message sur CCM ! Je suis sous XP Home Edition et lorsque je reçois, sur ma messagerie IncrediMail un fichier DAT, je n'arrive jamais à l'ouvrir ? Merci de m'éclairer de vos lumières ! @ + www.commentcamarche.net/forum/affich-2490998-ouvrir-un-fichier-dat
Mise a jour mcafee fichiers datBonjour,j ai depuis peu macafee mes mises a jours sont bien telecharges mais mon fichier dat est d une date denovembre 2006 quel lien pour mise a jour de celui ci merci www.commentcamarche.net/forum/affich-3736887-mise-a-jour-mcafee-fichiers-dat
Convertir fichier .dat en fichier .txBonne et heureuse année 2006. Je souhaite convertir des fichier .dat en fichier .txt en vue d'en importer le contenu dans une base de données SQL. Je recherhce un programme capable de me réaliser cette conversion. Merci www.commentcamarche.net/forum/affich-2020018-convertir-fichier-dat-en-fichier-tx
Télécharger Index.dat AnalyzerIndex.dat Analyzer permet de voir, éditer et effacer le contenu de ces fichiers - théoriquement cachés - qui participent aux fonctions de cache d'Internet explorer, et stockent un certain nombre de vos traces sur internet (URLs notamment), mais aussi... www.commentcamarche.net/telecharger/telecharger-34055298-index-dat-analyzer
Linux - L'arborescence des fichiersLa hiérarchie des fichiers sous Linux Pour assurer la compatibilité et la portabilité, les systèmes Linux respectent l'unique norme FHS (File Hierarchy Standard). La hiérarchie de base est la suivante : /la racine, elle contient les... www.commentcamarche.net/contents/linux/linarb.php3
Linux - Compilation du noyau (Kernel)Compilation du Kernel Cet article a pour but de présenter la compilation du noyau (ou kernel) sous Linux. Les explications suivantes sont basées sur la version 2.4.20 du kernel, la dernière en date au moment de l'écriture de l'article (mars... www.commentcamarche.net/contents/linux/linkernel.php3