J'ai créé un petit service sur le net qui permet de stocker de façon
éphémere des images ou des fichiers sur le net ( cjoint.com)
Tant que ce truc était peu connu tout marchait bien. Maintenant, j'ai du
dépasser une limite car ma commande :
-----------
find [chemin d'acces]/*.* -maxdepth 1 -type f -mmin +20160 -print | xargs rm
-----------
me rend "Argument list too long"
Le web ne m'aide pas beaucoup sur ce coup car il est dit partout "...quand
vous avez le message "Argument list too long", utilisez la commande find..."
Bon ;-)) Que puis-je faire dans un "cron" quotidien pour vider mes fichiers
qui ont plus de 15 jours ( plusieurs dizaines de milliers...) et ce, de
façon fiable ?
Le problème est là : ce *.* est évalué avant l'appel à find, et il donne trop de fichiers.
Que puis-je faire dans un "cron" quotidien pour vider mes fichiers qui ont plus de 15 jours ( plusieurs dizaines de milliers...) et ce, de façon fiable ?
Il faudrait plus de détails sur l'organisation de ces fichiers.
"Laurent Lecatelier" wrote in message
<424441ef$0$32723$626a14ce@news.free.fr>:
Le problème est là : ce *.* est évalué avant l'appel à find, et il donne
trop de fichiers.
Que puis-je faire dans un "cron" quotidien pour vider mes fichiers
qui ont plus de 15 jours ( plusieurs dizaines de milliers...) et ce, de
façon fiable ?
Il faudrait plus de détails sur l'organisation de ces fichiers.
Le problème est là : ce *.* est évalué avant l'appel à find, et il donne trop de fichiers.
Que puis-je faire dans un "cron" quotidien pour vider mes fichiers qui ont plus de 15 jours ( plusieurs dizaines de milliers...) et ce, de façon fiable ?
Il faudrait plus de détails sur l'organisation de ces fichiers.
Laurent Lecatelier
Bonjour
Merci pour le coup de main ;-)
Il faudrait plus de détails sur l'organisation de ces fichiers.
C'est un unique répertoire avec tous les fichiers transmis par les utilisateurs. 20000 entrées, 500 Mo en gros. Il y a de tout....du zip, du rar, du xls, du pdf, plein de JPG, gif, html. Les noms sont complexes mais avce des caractères "normaux" car je vire les caractères spéciaux (accents etc...) avant de stocker les fichiers. Que puis je dire de plus ?
Amicalement,
-- Laurent Lecatelier
Bonjour
Merci pour le coup de main ;-)
Il faudrait plus de détails sur l'organisation de ces fichiers.
C'est un unique répertoire avec tous les fichiers transmis par les
utilisateurs. 20000 entrées, 500 Mo en gros. Il y a de tout....du zip, du
rar, du xls, du pdf, plein de JPG, gif, html. Les noms sont complexes mais
avce des caractères "normaux" car je vire les caractères spéciaux (accents
etc...) avant de stocker les fichiers. Que puis je dire de plus ?
Il faudrait plus de détails sur l'organisation de ces fichiers.
C'est un unique répertoire avec tous les fichiers transmis par les utilisateurs. 20000 entrées, 500 Mo en gros. Il y a de tout....du zip, du rar, du xls, du pdf, plein de JPG, gif, html. Les noms sont complexes mais avce des caractères "normaux" car je vire les caractères spéciaux (accents etc...) avant de stocker les fichiers. Que puis je dire de plus ?
Amicalement,
-- Laurent Lecatelier
Nicolas George
"Laurent Lecatelier" wrote in message <42444a95$0$2768$:
C'est un unique répertoire avec tous les fichiers transmis par les utilisateurs. 20000 entrées, 500 Mo en gros. Il y a de tout....du zip, du rar, du xls, du pdf, plein de JPG, gif, html. Les noms sont complexes mais avce des caractères "normaux" car je vire les caractères spéciaux (accents etc...) avant de stocker les fichiers. Que puis je dire de plus ?
Ça suffit amplement. Déjà, il y avait une petite erreur, puisque *.* rate tous les fichier dont le nom ne comporte pas de point.
Pour l'opération, un simple find comme :
find chemin -type f <options pour le temps> | xargs
devrait faire l'affaire. Je conseillerais plutôt :
cd chemin || exit $? find . -type f <...> | xargs
qui a l'avantage de faire des lignes plus courtes.
"Laurent Lecatelier" wrote in message
<42444a95$0$2768$626a14ce@news.free.fr>:
C'est un unique répertoire avec tous les fichiers transmis par les
utilisateurs. 20000 entrées, 500 Mo en gros. Il y a de tout....du zip, du
rar, du xls, du pdf, plein de JPG, gif, html. Les noms sont complexes mais
avce des caractères "normaux" car je vire les caractères spéciaux (accents
etc...) avant de stocker les fichiers. Que puis je dire de plus ?
Ça suffit amplement. Déjà, il y avait une petite erreur, puisque *.* rate
tous les fichier dont le nom ne comporte pas de point.
Pour l'opération, un simple find comme :
find chemin -type f <options pour le temps> | xargs
devrait faire l'affaire. Je conseillerais plutôt :
cd chemin || exit $?
find . -type f <...> | xargs
qui a l'avantage de faire des lignes plus courtes.
"Laurent Lecatelier" wrote in message <42444a95$0$2768$:
C'est un unique répertoire avec tous les fichiers transmis par les utilisateurs. 20000 entrées, 500 Mo en gros. Il y a de tout....du zip, du rar, du xls, du pdf, plein de JPG, gif, html. Les noms sont complexes mais avce des caractères "normaux" car je vire les caractères spéciaux (accents etc...) avant de stocker les fichiers. Que puis je dire de plus ?
Ça suffit amplement. Déjà, il y avait une petite erreur, puisque *.* rate tous les fichier dont le nom ne comporte pas de point.
Pour l'opération, un simple find comme :
find chemin -type f <options pour le temps> | xargs
devrait faire l'affaire. Je conseillerais plutôt :
cd chemin || exit $? find . -type f <...> | xargs
qui a l'avantage de faire des lignes plus courtes.
Jacques L'helgoualc'h
Le 25-03-2005, Nicolas George <nicolas$ a écrit : [...]
Pour l'opération, un simple find comme :
find chemin -type f <options pour le temps> | xargs
devrait faire l'affaire. Je conseillerais plutôt :
cd chemin || exit $? find . -type f <...> | xargs
qui a l'avantage de faire des lignes plus courtes.
Il faut aussi se méfier des espaces dans les noms de fichiers
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se trouvent directement dans le répertoire [chemin d'acces] et qui n'ont pas de "." dans leur nom seront pris en compte avec ma commande mais pas avec la tienne.
Cela dit, je ne pense pas que le fait d'exclure les fichiers et répertoires ne contenant pas de point soit volontaire ;-)
"Laurent Lecatelier" <laurent.lecatelier@free.fr> a écrit sur fr.comp.os.unix :
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se
trouvent directement dans le répertoire [chemin d'acces] et qui n'ont
pas de "." dans leur nom seront pris en compte avec ma commande mais pas
avec la tienne.
Cela dit, je ne pense pas que le fait d'exclure les fichiers et
répertoires ne contenant pas de point soit volontaire ;-)
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se trouvent directement dans le répertoire [chemin d'acces] et qui n'ont pas de "." dans leur nom seront pris en compte avec ma commande mais pas avec la tienne.
Cela dit, je ne pense pas que le fait d'exclure les fichiers et répertoires ne contenant pas de point soit volontaire ;-)
Nicolas George
Jacques L'helgoualc'h wrote in message <slrnd48m57.qik.lhh+:
Il faut aussi se méfier des espaces dans les noms de fichiers
Le monsieur avait dit qu'il refusait les caractères spéciaux dans les noms de fichiers.
Jacques L'helgoualc'h wrote in message
<slrnd48m57.qik.lhh+nospam@ulysse.maison>:
Il faut aussi se méfier des espaces dans les noms de fichiers
Le monsieur avait dit qu'il refusait les caractères spéciaux dans les noms
de fichiers.
Jacques L'helgoualc'h wrote in message <slrnd48m57.qik.lhh+:
Il faut aussi se méfier des espaces dans les noms de fichiers
Le monsieur avait dit qu'il refusait les caractères spéciaux dans les noms de fichiers.
Laurent Lecatelier
Bonsoir
Je ne vois pas trop ce qu'apporte ton "/*.*"... Logiquement, tu ... Cela dit, je ne pense pas que le fait d'exclure les fichiers et répertoires ne contenant pas de point soit volontaire ;-)
Je suis rouge de honte, plus ou moins vingt années de msdos, ca laisse des sequelles ;-) Merci à tous, en retirant le *.* c'est nettement mieux ;-)
Si quelqu'un a fini de lire son exemplaire d'Unix pour les nuls....
Bien amicalement,
-- Laurent Lecatelier
Bonsoir
Je ne vois pas trop ce qu'apporte ton "/*.*"... Logiquement, tu
...
Cela dit, je ne pense pas que le fait d'exclure les fichiers et
répertoires ne contenant pas de point soit volontaire ;-)
Je suis rouge de honte, plus ou moins vingt années de msdos, ca laisse des
sequelles ;-)
Merci à tous, en retirant le *.* c'est nettement mieux ;-)
Si quelqu'un a fini de lire son exemplaire d'Unix pour les nuls....
Je ne vois pas trop ce qu'apporte ton "/*.*"... Logiquement, tu ... Cela dit, je ne pense pas que le fait d'exclure les fichiers et répertoires ne contenant pas de point soit volontaire ;-)
Je suis rouge de honte, plus ou moins vingt années de msdos, ca laisse des sequelles ;-) Merci à tous, en retirant le *.* c'est nettement mieux ;-)
Si quelqu'un a fini de lire son exemplaire d'Unix pour les nuls....
Bien amicalement,
-- Laurent Lecatelier
Jacques L'helgoualc'h
Le 25-03-2005, Nicolas George <nicolas$ a écrit :
Jacques L'helgoualc'h wrote in message <slrnd48m57.qik.lhh+:
Il faut aussi se méfier des espaces dans les noms de fichiers
Le monsieur avait dit qu'il refusait les caractères spéciaux dans les noms de fichiers.
Le cas de l'espace n'était pas spécifié, « spéciaux (accents etc...) » ; autant rester prudent. -- Jacques L'helgoualc'h
Le 25-03-2005, Nicolas George <nicolas$george@salle-s.org> a écrit :
Jacques L'helgoualc'h wrote in message
<slrnd48m57.qik.lhh+nospam@ulysse.maison>:
Il faut aussi se méfier des espaces dans les noms de fichiers
Le monsieur avait dit qu'il refusait les caractères spéciaux dans les noms
de fichiers.
Le cas de l'espace n'était pas spécifié, « spéciaux (accents etc...) » ;
autant rester prudent.
--
Jacques L'helgoualc'h
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se trouvent directement dans le répertoire [chemin d'acces] et qui n'ont pas de "." dans leur nom seront pris en compte avec ma commande mais pas avec la tienne.
Enfin, presque la même chose, puisque les fichiers ou répertoires qui
se trouvent directement dans le répertoire [chemin d'acces] et qui
n'ont pas de "." dans leur nom seront pris en compte avec ma commande
mais pas avec la tienne.
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se trouvent directement dans le répertoire [chemin d'acces] et qui n'ont pas de "." dans leur nom seront pris en compte avec ma commande mais pas avec la tienne.
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se trouvent directement dans le répertoire [chemin d'acces] et qui n'ont pas de "." dans leur nom seront pris en compte avec ma commande mais pas avec la tienne.
Pas tout a fait équivalant ! La commande initiale ne rentrait pas dans les répertoires sans point qui se trouvait directement dans le répertoire [chemin d'acces], alors que cette commande le fait.
Mais bon, cette subtilité du point était involontaire, donc inutile de spécifier l'option -name
Jérémy JUST <jeremy_just@netcourrier.com> a écrit sur fr.comp.os.unix :
On Fri, 25 Mar 2005 21:01:00 +0100
Etienne de Tocqueville <et+news@steph.teaser.fr> wrote:
Enfin, presque la même chose, puisque les fichiers ou répertoires qui
se trouvent directement dans le répertoire [chemin d'acces] et qui
n'ont pas de "." dans leur nom seront pris en compte avec ma commande
mais pas avec la tienne.
Pas tout a fait équivalant ! La commande initiale ne rentrait pas dans
les répertoires sans point qui se trouvait directement dans le
répertoire [chemin d'acces], alors que cette commande le fait.
Mais bon, cette subtilité du point était involontaire, donc inutile de
spécifier l'option -name
Enfin, presque la même chose, puisque les fichiers ou répertoires qui se trouvent directement dans le répertoire [chemin d'acces] et qui n'ont pas de "." dans leur nom seront pris en compte avec ma commande mais pas avec la tienne.
Pas tout a fait équivalant ! La commande initiale ne rentrait pas dans les répertoires sans point qui se trouvait directement dans le répertoire [chemin d'acces], alors que cette commande le fait.
Mais bon, cette subtilité du point était involontaire, donc inutile de spécifier l'option -name