Warning: Parameter 1 to behaviorsPagesStatiques::addTplPath() expected to be a reference, value given in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php on line 304

Warning: Cannot modify header information - headers already sent by (output started at /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php:304) in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/libs/clearbricks/common/lib.http.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php:304) in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/libs/clearbricks/common/lib.http.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php:304) in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/libs/clearbricks/common/lib.http.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php:304) in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/libs/clearbricks/common/lib.http.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php:304) in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/public/lib.urlhandlers.php on line 85

Warning: Cannot modify header information - headers already sent by (output started at /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/core/class.dc.core.php:304) in /home/flyounet/dev.flyou.net/dotclear-2.2.3/inc/libs/clearbricks/common/lib.http.php on line 273
Flyou.net [Dev] : Développements - Tag - allcompare 2017-05-04T04:41:02+02:00 Flyounet urn:md5:69f091255befd3717a2b2e45b9aa3688 Dotclear AnalDup.sh v0.21 (anciennement allcompare.sh) urn:md5:42e97141941c93057853593e0a6e52c2 2008-04-10T22:41:00+02:00 2010-04-29T19:25:21+02:00 Flyounet Outils & Développements allcompareAnalDupScriptShell <h2>Script shell pour trouver vos fichiers dupliqués.</h2> <p>Cette mise à jour (et ce changement de nom depuis la version 0.20) est un début de la mise en place de la limitation du nombre de traitements concurrents.</p> <p>Cette version est remplie de débug. Cependant, elle est fonctionnelle et la limite de fonctionne pour l'instant que sur la recherche des fichiers. Pour contrôler cette fonction, l'argument <code>-y</code> sera utilisé.</p> <h3>Un peu d'aide&nbsp;:</h3> <pre>~# ./allcompare.sh -h [-h] [-P] [-M|-S] [-R] [-i bytes] [-I bytes] [-o filename] [-t directory] [-f filename|-s FS]* -h this help -K do not remove temporary folder at end -Q do not write any information (quiet mode) (only errors will be written) -P do not parallelize research -M use md5sum for file analyze -S use sha1sum for file analyze (default) -R don't search recursivly -y max proc. number of maximum concurrent process (default 10) -i bytes don't search files that have more than -i bytes -I bytes don't search files that have less than -I bytes -o filename write results to this file -t directory use this directory as prefix for temporary files -f filename find FS in the file instead of argument -s FS filesystem are separated by a semi colon * Mandatory field</pre> <p>A vu de nez, ça devrait se comprendre tout seul, mais bon, dans le doute...<br /> Le <code>-K</code> est utile si on veut débugguer,<br /> Le <code>-Q</code> est utile pour les batch,<br /> Le <code>-P</code> existe mais c'est dommage de l'utiliser, ça ralenti grandement la recherche,<br /> Le <code>-M</code> est là si le md5sum n'existe pas...<br /> Le <code>-R</code> est là pour les cochons qui mettent tout dans le même répertoire,<br /> Le <code>-y</code> est utile pour contrôler le nombre maximum de processus devant tourner simultanément (valeur par défaut 10),<br /> Les <code>-i</code> et <code>-I</code><sup>[<a href="http://dev.flyou.net/post/2008/04/10/AnalDupsh-v021-anciennement-allcomparesh#pnote-9-1" id="rev-pnote-9-1">1</a>]</sup> permettent de limiter la recherche sur des fichiers d'une taille donnée,<br /> Le <code>-o</code> est là pour indiquer un fichier de sortie,<br /> Le <code>-t</code> m'est utile pour les batchs (maintenant ça peut servir à quelqu'un d'autre),<br /> Le <code>-f</code> ressemble au <code>-s</code> sauf qu'il faut le mettre dans un fichier,<br /> Il est obligatoire d'avoir au le <code>-f</code> ou le <code>-s</code>...</p> <div class="footnotes"><h4>Notes</h4> <p>[<a href="http://dev.flyou.net/post/2008/04/10/AnalDupsh-v021-anciennement-allcomparesh#rev-pnote-9-1" id="pnote-9-1">1</a>] Minuscule et majuscule...</p></div> http://dev.flyou.net/post/2008/04/10/AnalDupsh-v021-anciennement-allcomparesh#comment-form http://dev.flyou.net/feed/atom/comments/9 allcompare.sh v0.15 (Blennorragie) urn:md5:bdb0bb2ad5dc34be35932086c8d2eebe 2008-04-08T23:37:00+02:00 2008-04-10T22:46:03+02:00 Flyounet Outils & Développements allcompareScriptShell <h2>Permettre à tous vos petits fichiers en double<sup>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#pnote-7-1" id="rev-pnote-7-1">1</a>]</sup> d'être trouvés (même s'ils n'ont pas le même nom).</h2> <p>Je me doute qu'il doit bien exister une tétra chier de programme du même genre, mais ceux que j'ai pu trouver étaient soit graphiques, soit il me manquait quelque chose. Comme j'en ai principalement eu besoin au boulot pour mes serveurs, je suis sûr qu'il tourne sous Linux (et normalement il fonctionne encore sur AIX).</p> <div class="footnotes"><h4>Notes</h4> <p>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#rev-pnote-7-1" id="pnote-7-1">1</a>] Triple, quadruple, quintuple, sextuple, et j'en passe...</p></div> <h3>Principe de fonctionnement et intérêt&nbsp;:</h3> <p>La plupart des outils que j'ai pu tester étaient assez lents dans leur fonctionnement. Le présent script étant principalement utilisé sur des serveurs, j'ai tenté d'optimiser un peu la recherche et l'analyse. <br />Ainsi, lorsque l'on cherche à comparer le contenu de répertoires il peut arriver que ces répertoires soient sur des disques physiques différents.</p> <p>Afin de rechercher plus vite on peut lancer plusieurs processus simultanéement. Le problème est que si on lance ces processus sur le même disque, on va se retrouver avec une contention au niveau du disque. C'est pourquoi le script tente de vérifier si les répertoires se trouvent ou sur le même disque. Dans l'<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#ExempleUtilisation" hreflang="fr">exemple</a> ci-dessous, plusieurs répertoires sont indiqués en ligne de commande. Comme ces répertoires sont sur des disques différents, le script traitera en parallèle les trois pour la recherche de fichiers<sup>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#pnote-7-1" id="rev-pnote-7-1">1</a>]</sup>.</p> <h3>Utilisation&nbsp;:</h3> <ul> <li>Première nécessité&nbsp;: Un shell digne de ce nom&nbsp;! (KSH, Bash, Tcsh, Zsh, etc.)<sup>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#pnote-7-2" id="rev-pnote-7-2">2</a>]</sup>.</li> <li>Dernière nécessité<sup>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#pnote-7-3" id="rev-pnote-7-3">3</a>]</sup>&nbsp;: Lancer votre ligne de commande.</li> </ul> <h3>Exemple d'utilisation&nbsp;: <a name="ExempleUtilisation"></a></h3> <pre>~# ./allcompare.sh -o ./Results4.comp -s '/mnt/partage/::/mnt/stockage/::/mnt/grosvol/' -i 50 + Verifications... Done - sha1sum will be used. - Destination file will be : ./Results4.comp - Temp. dir. will be /tmp/allcompare.sh.24559 + Analyse arguments... Done + Tri des FS... Done + Recherche des fichiers... sur /mnt/partage/... Done sur /mnt/grosvol/... Done sur /mnt/stockage/... Done Recherche des fichiers... Done + Recherche des doublons par taille... Files: 4470 - 0byte: 865 - Uniques: 0 - Doublons: 49 - Errors: 1 ... Done + Analyse des doublons... 0%....10%....20%....30%....40%......55%....65%....75%....85%....95%.100% Done</pre> <h3>Exemple de résultat (avec la commande utilisée ci-dessus)&nbsp;:</h3> <pre>################################################################################ 1) 2 fichiers de 49 octets [hash : 12cf188999d9640f9af759d6b1c601535da87398] 1) /mnt/stockage/Sauvegarde_LocoWeb/20070404/www.flyou.net/simple/modules/FCKeditorX/FCKeditor/editor/images/arrow_ltr.gif 2) /mnt/stockage/loco/www.flyou.net/simple/modules/FCKeditorX/FCKeditor/editor/images/arrow_ltr.gif</pre> <pre>################################################################################ 2) 8 fichiers de 49 octets [hash : 1ddefee04dc9e9b2576dc34eebcfa3de4aa82af9] 1) /mnt/stockage/Xavier/programme/Appz/winvnc/setup.lid 2) /mnt/stockage/Xavier/programme/x86/setup/setup.lid 3) /mnt/grosvol/Xavier/stockage/System Volume Information/_restore{B913CFC4-85E1-4B1A-8199-ED123641429C}/RP1434/A0915362.lid 4) /mnt/grosvol/Xavier/stockage/System Volume Information/_restore{B913CFC4-85E1-4B1A-8199-ED123641429C}/RP1434/A0915369.lid 5) /mnt/grosvol/Xavier/stockage/System Volume Information/_restore{B913CFC4-85E1-4B1A-8199-ED123641429C}/RP1434/A0920147.lid 6) /mnt/grosvol/Xavier/stockage/System Volume Information/_restore{B913CFC4-85E1-4B1A-8199-ED123641429C}/RP1434/A0919736.lid 7) /mnt/grosvol/Xavier/stockage/Applications/Ekod21.F/SETUP16.AN/SETUP.LID 8) /mnt/grosvol/Récupération P/WebSphere/AppServer406/binaire/setup.lid</pre> <pre>################################################################################ 5) 4 fichiers de 49 octets [hash : 356359c447b5bedfcae514d59a0841c7a0c7fe19] 1) /mnt/partage/NoteBook/C/temp/coppermine-1.1.0/themes/water_drop/images/bg.gif 2) /mnt/stockage/Sauvegarde_LocoWeb/20070404/www.flyounet.net/Gally/themes/water_drop/images/bg.gif 3) /mnt/stockage/Vaio/Vaio_D/G.Pourcel/Mes documents/www/gpourcel/www.flyounet.net/Gally/themes/water_drop/images/bg.gif 4) /mnt/grosvol/MovieX/_Sauvegarde_PC_/FTP/www.flyounet.net/Gally/themes/water_drop/images/bg.gif</pre> <h3>Un peu d'aide&nbsp;:</h3> <pre>~# ./allcompare.sh -h [-h] [-P] [-M|-S] [-R] [-i bytes] [-I bytes] [-o filename] [-t directory] [-f filename|-s FS]* -h this help -K do not remove temporary folder at end -Q do not write any information (quiet mode) (only errors will be written) -P do not parallelize research -M use md5sum for file analyze -S use sha1sum for file analyze (default) -R don't search recursivly -i bytes don't search files that have more than -i bytes -I bytes don't search files that have less than -I bytes -o filename write results to this file -t directory use this directory as prefix for temporary files -f filename find FS in the file instead of argument -s FS filesystem are separated by a semi colon * Mandatory field</pre> <p>A vu de nez, ça devrait se comprendre tout seul, mais bon, dans le doute...<br /> Le <code>-K</code> est utile si on veut débugguer,<br /> Le <code>-Q</code> est utile pour les batch,<br /> Le <code>-P</code> existe mais c'est dommage de l'utiliser, ça ralenti grandement la recherche,<br /> Le <code>-M</code> est là si le md5sum n'existe pas...<br /> Le <code>-R</code> est là pour les cochons qui mettent tout dans le même répertoire,<br /> Les <code>-i</code> et <code>-I</code><sup>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#pnote-7-4" id="rev-pnote-7-4">4</a>]</sup> permettent de limiter la recherche sur des fichiers d'une taille donnée,<br /> Le <code>-o</code> est là pour indiquer un fichier de sortie,<br /> Le <code>-t</code> m'est utile pour les batchs (maintenant ça peut servir à quelqu'un d'autre),<br /> Le <code>-f</code> ressemble au <code>-s</code> sauf qu'il faut le mettre dans un fichier,<br /> Il est obligatoire d'avoir au le <code>-f</code> ou le <code>-s</code>...</p> <h3>Tu aimes l'anglais et ce bout de script&nbsp;?</h3> <p>Engages toi et deviens traducteur officiel, de ce billet, de ce script qui marchotte et du reste du site. Il est cependant nécessaire que tu répondes à quelques critères afin que s'avancent vers toi la gloire, la félicité, le bonheur, les femmes, par contre il n'y a pas d'argent à se faire...&nbsp;:</p> <ul> <li>Moins de 29 ans et demi,</li> <li>Bac +8 minimum,</li> <li>19 ans trois quart de pratique dans la traduction français - anglais,</li> <li>3d4+3 ans de pratique dans la traduction anglais - français,</li> <li>6 ans de pratique dans les massages,</li> <li>Ouvert(e) d'esprit,</li> <li>Prenant des initatives,</li> <li>Sentant bon la fraise.</li> </ul> <p>Il est évident que si tu t'engages en étant brune<sup>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#pnote-7-5" id="rev-pnote-7-5">5</a>]</sup>, et bien de ta personne ce sera un gros plus. Puisque, j'écris souvent des scripts (qui ne servent pas forcément), je peux potentiellement avoir plein de poste à pourvoir dans le même domaine.</p> <div class="footnotes"><h4>Notes</h4> <p>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#rev-pnote-7-1" id="pnote-7-1">1</a>] Si j'avais utilisé ce script seulement sur <code>/mnt</code> le script n'aurait lancé qu'un seul processus.</p> <p>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#rev-pnote-7-2" id="pnote-7-2">2</a>] Mieux vaut du <acronym title="Korn Shell">KSH</acronym>; j'ai pas eu le temps de tester ailleurs</p> <p>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#rev-pnote-7-3" id="pnote-7-3">3</a>] Ah bon déjà ? Bah, oui ! Sauf si vous préférez la version longue avec configuration de fichiers...</p> <p>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#rev-pnote-7-4" id="pnote-7-4">4</a>] Minuscule et majuscule...</p> <p>[<a href="http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#rev-pnote-7-5" id="pnote-7-5">5</a>] Si ton prénom est Gwendoline, je t'épouse de suite et je vire ma femme !</p></div> http://dev.flyou.net/post/2008/04/08/allcomparesh-v015-Blennorragie#comment-form http://dev.flyou.net/feed/atom/comments/7