|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : janvier 2004 Messages : 124 ![]() |
Bonjour.
voilà mon probleme. j'ai un repertoire de 100 gigas avec des mails dedans. autrement dit, énormément de fichiers. je veux le supprimer mais un me donne l'erreur du too many arguments. j'ai donc fait un j'ai donc la liste de ces mails dans un fichier texte. mais now, comment les virer un par un ? une boucle for devrait suffire, mais je n'y arrive pas. c'est tout con, mais ça me prend la tete. donc si vous avez une idée. merci bcp |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Inscription : avril 2004 Messages : 8 227 ![]() |
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!! Lisez les règles du forum Perl. Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles |
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : janvier 2004 Messages : 124 ![]() |
oué, j'aurais du préciser. merci de ta réponse.
malhereusement, cette commande échoue elle rame et mouline pendant des heures sans resultat |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Inscription : avril 2004 Messages : 8 227 ![]() |
tu veux un script perl qui t'efface tes fichiers puis repertoires?
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!! Lisez les règles du forum Perl. Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles |
|
|
00
|
|
|
#5 |
|
Membre à l'essai
![]() Inscription : janvier 2004 Messages : 124 ![]() |
euh. bah juste les millions de fichiers contenus dans ce repertoire. mais faire tt un script pr ça, c'est ptet lourd.
|
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() Consultant informatique Inscription : janvier 2006 Messages : 918 ![]() |
Citation:
Sinon action immédiat ca mettra le meme tps mais qd tu arretera la commande y'auras des fichier de dissaparu donc au lancement de la seconde commande temps < au premier lancement |
|
|
|
00
|
|
|
#7 | ||
![]() ![]() ![]() Inscription : avril 2004 Messages : 8 227 ![]() |
voilà un script.
mets ce script dans un fichier toto.pl puis chmod +x toto.pl puis perl toto.pl voilà test le sur un petit repertoire pour voir, j'ai pas eu le temps de le retester. T'as juste à mettre le chemin de ton repertoire dans $repertoire. Code :
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!! Lisez les règles du forum Perl. Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles |
||
|
|
00
|
|
|
#8 | ||
![]() ![]() ![]() Inscription : avril 2004 Messages : 8 227 ![]() |
y avait des conneries dans le scripts, mets celui ci, je l'ai testé et optimisé :
Code :
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!! Lisez les règles du forum Perl. Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles |
||
|
|
00
|
|
|
#9 | |||
|
Expert Confirmé Sénior
![]() ![]() ![]() Laurent SchneiderAdministrateur de base de données Inscription : décembre 2005 Messages : 2 892 ![]() |
Citation:
rm -f /mails/* ne fonctionnera pas s'il y a trop de fichiers. tu peux faire quelque chose comme Code :
testé seulement sur AIX, man xargs peut t'aider |
|||
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() Inscription : mars 2004 Messages : 3 053 ![]() |
J'avais eu ce problème sous Solaris aussi. Un répertoire rempli de 85 000 fichiers....
J'avais fait un truc simplissime : rm -rf /mails/a* rm -rf /mails/b* rm -rf /mails/c* etc... Mais je pense que l'idée de Laurent est plus .... propre :p
__________________
Ancien Rédacteur Linux && Unix / Nouveau retraité de DVP The UNIX way of sex: gunzip;strip;touch;finger;mount;fsck;more;yes;umount;sleep Je ne réponds ni aux messages privées, ni aux messages plein de fautes... |
|
|
00
|
|
|
#11 |
![]() ![]() ![]() Inscription : avril 2004 Messages : 8 227 ![]() |
pas de perleens pour me dire si mon script est nul
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!! Lisez les règles du forum Perl. Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles |
|
|
00
|
|
|
#12 | |
|
Membre Expert
![]() Consultant informatique Inscription : janvier 2006 Messages : 918 ![]() |
Citation:
|
|
|
|
00
|
|
|
#13 |
|
Expert Confirmé
![]() Inscription : mars 2004 Messages : 3 053 ![]() |
C'est connu (en tout cas chez Sun)
La limite est difficile à "calculer" Quand tu met *, le système modifie le * par la liste des fichiers. Donc dans le code, tu dois atteindre la limite du tableau. (faut bien une limite quand même:p) Il faut savoir que j'étais à 60 000 fichiers sans problème. A partir de 65 000 j'avais l'erreur. Les noms de fichiers étaient sur 11 caractères (importation d'une plateforme NT)
__________________
Ancien Rédacteur Linux && Unix / Nouveau retraité de DVP The UNIX way of sex: gunzip;strip;touch;finger;mount;fsck;more;yes;umount;sleep Je ne réponds ni aux messages privées, ni aux messages plein de fautes... |
|
|
00
|
|
|
#14 |
|
Expert Confirmé Sénior
![]() ![]() ![]() Laurent SchneiderAdministrateur de base de données Inscription : décembre 2005 Messages : 2 892 ![]() |
en testant la limite sur AIX, j'ai vu la chose suivante
jusqu'à 3703 fichiers, ça marche. entre 3704 et et 3719 ça bugge (Process Killed) à plus de 3720 ça retourne une erreur mais ça dépend de ta syntaxe (et d'autres paramètres). Il me parait sûr de dire que jusqu'à 255 paramètres c'est OK |
|
00
|
|
|
#15 | |
|
Membre confirmé
![]() Inscription : octobre 2005 Messages : 338 ![]() |
Sur AIX, la commande suivante fonctionne sans problèmes:
Citation:
|
|
|
|
00
|
|
|
#16 | ||
![]() Inscription : mars 2004 Messages : 1 300 ![]() |
Code :
|
||
|
|
00
|
|
|
#17 | |||
|
Membre Expert
![]() Inscription : septembre 2004 Messages : 2 181 ![]() |
Citation:
C'est pour cela que je préfère une petite astuce avec Perl : Code :
find mails -type f -print0 | perl -n0e 'unlink'
__________________
|
|||
|
|
00
|
|
|
#18 | |||
|
Membre à l'essai
![]() Inscription : janvier 2004 Messages : 124 ![]() |
Citation:
Merci, c'est ce que j'ai utilisé et ça a marché à la perfection. |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com