<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/xsl/blog.xsl"?>
<!-- Comm..........
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
....................................................................................
-->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel> 
<title>Blog  - tfeserver: Blog de tfe</title> 
<description>html, scripts et tout un tas de trucs...</description> 
<link>http://www.tfeserver.be</link> 
<generator>Perl</generator> 


	<item>
        <guid>http://www.tfeserver.be/blog/Linux_script_delete_duplicated_images.xml</guid>
        <link>http://www.tfeserver.be/blog/Linux_script_delete_duplicated_images.xml</link>
        <pubDate>Mon, 23 Jan 2012 13:10:34 GMT</pubDate>
        <title><![CDATA[Linux script to delete duplicated images]]></title>
        <description><![CDATA[<p>Histoire d'inaugurer correctement le <a href="http://www.kimsufi.com/fr/">nouveau serveur</a>, un petit billet/astuce pour détecter des images en double dans un répertoire, et les supprimer si nécessaire.</p>

<p>Nous allons tout d'abord générer une liste de fichiers avec le hash md5 associé à chaque fichier. Pour cela on utilise find couplé à md5sum:</p>
<pre>find /home/user/repertoire -iname '*jpg'|while read n; do md5sum "$n" >> md5sum_images; done</pre>


<p>Cette ligne crée un fichier structuré de la forme suivante:</p>
<pre>
somme1_md5(32_caracteres)    ./nom_de_fichier1
somme2_md5(32_caracteres)    ./nom_de_fichier2
etc...
</pre>

<p>Il va nous faloir tout d'abord trier les sommes de hashage pour détecter les doublons:</p>
<pre>sort md5sum_images > sorted_md5sum_images</pre>

<p>Puis détecter les doublons parmis ce nouveau fichier:</p>
<pre>uniq -dw 32 --all-repeated=separate sorted_md5sum_images</pre>
<ol>
<li>L'option -d indique de n'afficher que les éléments doublons</li>
<li>L'option -w 32 indique de ne détecter les doublons que sur les 32 premiers caractères</li>
<li>L'option  --all-repeated=separate demande d'afficher chaque occurence du doublon et de les séparer par une ligne blanche.</li>
</ol>

<p>On obtient le résultat suivant:</p>
<pre>

00a49967be7f43d532db56e1dce595ed  ./reptoire1/DSC00180.JPG
00a49967be7f43d532db56e1dce595ed  ./repertoire2/DSC00180.JPG

00a597f061cabc1ef2af2ffa90948cf5  ./rep3/DSCF0167.JPG
00a597f061cabc1ef2af2ffa90948cf5  ./rep4/DSCF0167.JPG
etc...
</pre>

<p>Et pour conclure, si on désire supprimer l'ensemble des doublons:</p>
<pre>uniq -dw 32  sorted_md5sum_images |cut -d' ' -f 3|xargs rm -v</pre>





]]></description>
        <comments>http://www.tfeserver.be/blog/Linux_script_delete_duplicated_images.xml</comments>
        <category>script</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/configuracion_ssid_router_yacom_astoria.xml</guid>
        <link>http://www.tfeserver.be/blog/configuracion_ssid_router_yacom_astoria.xml</link>
        <pubDate>Sat, 15 Oct 2011 12:32:06 GMT</pubDate>
        <title><![CDATA[Configuracion SSID router Yacom Astoria]]></title>
        <description><![CDATA[<p>Si como yo, habéis tenido problemas a la hora de configurar vuestro router Yacom Astoria (aka SMC7908A-ISP), ahi esta el truco.</p>

<p>La página de configuración existe, pero no aparece en el menú en Google Chrome</p>
<p>Tan solo tenéis que ir manualmente a la página:</p>
<ul>
<li><a href="http://192.168.2.1/wireless_e.stm?">http://192.168.2.1/wireless_e.stm?</a> para poder configurar la clave del Wifi.</li>
<li><a href="http://192.168.2.1/wireless_mac.stm">http://192.168.2.1/wireless_mac.stm</a> para configurar el filtro de las MACS</li>
<li><a href="http://192.168.2.1/wireless_id.stm">http://192.168.2.1/wireless_id.stm</a> para modificar el SSID (nombre del wifi)</li>
</ul>
<p>Espero que os sea de ayuda.</p>]]></description>
        <comments>http://www.tfeserver.be/blog/configuracion_ssid_router_yacom_astoria.xml</comments>
        <category>Tips</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/eztv_rss_by_shows_using_tpb.xml</guid>
        <link>http://www.tfeserver.be/blog/eztv_rss_by_shows_using_tpb.xml</link>
        <pubDate>Thu, 06 Oct 2011 05:20:51 GMT</pubDate>
        <title><![CDATA[eztv rss by shows using tpb]]></title>
        <description><![CDATA[<p>My previous script used eztv.it page to generate feeds for:</p>
<ul>
<li>Lastest releases</li>
<li>Une feed per show</li>
</ul>

<p>Unfortunately, eztv.it and ezrss.it are pages that are used to crash, and i can't use them as many as i wanted to.</p>
<p>I juste write a tiny script that search for the custom show in "thepiratebay", and display the result of the 3 first pages as rss feed.</p>
<p>The script generates static html pages, so you can serve them directly by your favorite httpd server.</p>
<p>Download</p>
<ul>
<li><a href="/downloadhtml/eztv_scripts/eztv_tpb.pl">the script using the pirate bay</a></li>
<li><a href="/downloadhtml/eztv_scripts/shows.txt">the shows.txt file used by the tpb script</a></li>
<li><a href="/downloadhtml/eztv_scripts/eztv.pl">the script using eztv.it</a></li>
</ul>
<p>Hope you will find it usefull.</p>
]]></description>
        <comments>http://www.tfeserver.be/blog/eztv_rss_by_shows_using_tpb.xml</comments>
        <category>web</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/pages_404_et_seo.xml</guid>
        <link>http://www.tfeserver.be/blog/pages_404_et_seo.xml</link>
        <pubDate>Wed, 07 Sep 2011 07:32:45 GMT</pubDate>
        <title><![CDATA[Pages 404 et SEO]]></title>
        <description><![CDATA[<p>Encore une astuce que je ne connaissais pas, et qui je pense peut être très utile lors  de la suppression d'une section de page web, ou de documents en général.</p>

<p>
Le code de retour <a href="http://www.checkupdown.com/status/E410_es.html">410 Gone</a> indique au client que le document n'a pas été trouvé et que cet état est permanent. Plus besoin de revenir le visiter pour voir si une heure après le document est présent.  C'est un retour très utile pour les bots (crawlers), afin d'éviter qu'ils n'effectuent plusieurs essaies avant de renoncer.
</p>
<p>Pour générer un code 410 Gone coté apache, il suffit d'utiliser le module mod_rewrite:</p>
<pre>rewriterule ^Page_effacee\.html$ - [G,L]</pre>

<p>Pour effectuer de même en php, il faudra modifier l'entête manuellement:</p>
<pre>header("HTTP/1.0 410 Gone");</pre>
<p>Cela permets au  système de blog/news/cms d'informer le client de la suppression d'un élément de la base de données par exemple.</p>

]]></description>
        <comments>http://www.tfeserver.be/blog/pages_404_et_seo.xml</comments>
        <category>web</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/Bug_firefox_disable_output_escaping_cdata.xml</guid>
        <link>http://www.tfeserver.be/blog/Bug_firefox_disable_output_escaping_cdata.xml</link>
        <pubDate>Mon, 22 Aug 2011 10:07:49 GMT</pubDate>
        <title><![CDATA[Bug de Firefox... de 2001]]></title>
        <description><![CDATA[<p>Certes peu de monde doit utiliser le moteur XSLT de Firefox car ce n'est pas une technologique très utilisée dans le monde du web, mais de là à laisser un bug de 2001 trainer comme ça...</p>

<p>Cf Firebug: <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=98168">https://bugzilla.mozilla.org/show_bug.cgi?id=98168</a></p>

<p>Un petit "Work around" de "Alexandr" permets de contourner cela en utilisant du javascript. C'est vraiment pas beau, mais c'est ce qui doit se faire pour que ça marche sur tous les navigateurs.</p>

<p>Étapes à suivre:</p>
<ol>
<li>Ajouter le script xsl à votre propre xsl: via  <xsl:include href="../<a href="http://tfeserver.be/xsl/firefox_sux/fix.xsl">fix_ff_xsl/fix.xsl</a>"/>  </li>

<li>Ajouter les librairies javascript (<a href="/js/encoder.js">encoder.js</a> et <a href="/js/disable_output_escaping.js">disable_output_escaping.js</a>) à votre code html généré</li>

<li>Appeler la fonction javascript fix_ff_disable_output_escaping() lorsque le DOM est chargé (typiquement, onload du body)</li>

<li>Remplacer les appels  <xsl:value-of select="xxx" disable-output-escaping="yes"/> par <xsl:call-template name="inc_disable_output_escaping"><xsl:with-param name="param" select="xxx"/></xsl:call-template>
</li>
</ol>

<p>Facil? Merci Firefox...</p>
]]></description>
        <comments>http://www.tfeserver.be/blog/Bug_firefox_disable_output_escaping_cdata.xml</comments>
        <category>web</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/eztv_rss_feed_eztv.it.xml</guid>
        <link>http://www.tfeserver.be/blog/eztv_rss_feed_eztv.it.xml</link>
        <pubDate>Thu, 18 Aug 2011 09:12:45 GMT</pubDate>
        <title><![CDATA[Eztv RSS Feed (ezrss.it)]]></title>
        <description><![CDATA[<p>Tired of waiting for ezrss.it to be back online, i wrote a tiny script that search on the main page (http://eztv.it) and displayed results as  rss feeds.</p>

<p>The list of the shows are available in this page: <a href="http://tfeserver.be/cgi-bin/eztv_list.pl">http://tfeserver.be/cgi-bin/eztv_list.pl</a></p>

<p>Exemple of the Dr. House EzTv Feed: <a href="http://tfeserver.be/cgi-bin/eztv.pl?id=124">http://tfeserver.be/cgi-bin/eztv.pl?id=124</a></p>

<p>Hope this will help.</p>
<p>Source of the script are available in the <a href="http://tfeserver.be/downloadhtml/eztv_scripts"> download eztv_Scripts section</a>.</p>]]></description>
        <comments>http://www.tfeserver.be/blog/eztv_rss_feed_eztv.it.xml</comments>
        <category>perl</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/certification_linux_lpi_1.xml</guid>
        <link>http://www.tfeserver.be/blog/certification_linux_lpi_1.xml</link>
        <pubDate>Fri, 05 Aug 2011 09:56:28 GMT</pubDate>
        <title><![CDATA[Certification Linux LPI 1]]></title>
        <description><![CDATA[<p>Cela faisait un certain temps que j'attendais cela, et c'est enfin fini !</p>

<p>Je viens de passer les deux examens de la certification <a href="http://lpi.org/eng/certification/the_lpic_program/lpic_1">Junior Level Linux Professional</a>.
Ils se presentent sous la forme de 60 questions QCM, avec un total de 90 minutes pour y répondre.
</p>

<p>Mitigé sur le résultat: Certes j'ai réussi l'examen, mais échouer sur des questions linux niveau "Junior", y-a-t-il vraiment de quoi être fier?
</p>

<p><img src="/downloadhtml/images/lpi1.jpg" alt="101" /></p>
<p><img src="/downloadhtml/images/lpi2.jpg" alt="102" /></p>]]></description>
        <comments>http://www.tfeserver.be/blog/certification_linux_lpi_1.xml</comments>
        <category>linux</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/minecraft_1.4_linux.xml</guid>
        <link>http://www.tfeserver.be/blog/minecraft_1.4_linux.xml</link>
        <pubDate>Fri, 15 Apr 2011 20:17:03 GMT</pubDate>
        <title><![CDATA[Minecraft 1.4 pour linux]]></title>
        <description><![CDATA[<p>Petite mise à jour du billet précédent de Minecraft pour linux:</p>
<p>La version Minecraft Noob Edition 1.4 est disponible. Vous pouvez la télécharger via <a href="http://tfeserver.be/downloadhtml/Minecraft_1.4_noob_edition.jar">la rubrique download du site</a>.</p>
]]></description>
        <comments>http://www.tfeserver.be/blog/minecraft_1.4_linux.xml</comments>
        <category>Minecraft</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/golden_boy_episode_1.xml</guid>
        <link>http://www.tfeserver.be/blog/golden_boy_episode_1.xml</link>
        <pubDate>Thu, 07 Apr 2011 19:14:15 GMT</pubDate>
        <title><![CDATA[Golden Boy épisode 1]]></title>
        <description><![CDATA[<p>Voici une petit vidéo bien symatique d'un manga qui a malheureusement été abandonné, je crois: Golden Boy.</p>
<p>Je poste ici le premier épisode, car on y trouve un jeune garçon découvrant les joies de la programmation.</p>
<p>Bon visionnage!</p>
<p><a  href="http://tfeserver.be/download/golden_boy_episode_1.flv" class="player" id="video1">Golden Boy Épisode 1</a></p>
<p>Vous pouvez aussi, si vous aimez, lire le manga directement via <a href="http://unixmanga.com/onlinereading/Golden_Boy.html">unixmanga.com</a></p>]]></description>
        <comments>http://www.tfeserver.be/blog/golden_boy_episode_1.xml</comments>
        <category>manga</category>
	</item>
	<item>
        <guid>http://www.tfeserver.be/blog/benchmark_pages_web_dynmiques_ab.xml</guid>
        <link>http://www.tfeserver.be/blog/benchmark_pages_web_dynmiques_ab.xml</link>
        <pubDate>Tue, 22 Mar 2011 19:56:55 GMT</pubDate>
        <title><![CDATA[Benchmark de pages web dynamiques avec ab]]></title>
        <description><![CDATA[<p>
Mini tutorial sous la forme d'un mémo pour benchmarker une page web dynamique (php ou autre) avec l'outil fourni avec le serveur apache: <a href="http://httpd.apache.org/docs/2.0/programs/ab.html">ab</a>.
</p>
]]></description>
        <comments>http://www.tfeserver.be/blog/benchmark_pages_web_dynmiques_ab.xml</comments>
        <category>web</category>
	</item>

    <item>
        <guid>http://www.tfeserver.be/blog.xml</guid>
        <link>http://www.tfeserver.be/blog.xml</link>
        <pubDate>Wed, 25 Jan 2006 08:22:10 GMT</pubDate>
        <title>Blog</title>
        <description>Blog</description>
        <category>internal</category>
    </item>
    <item>
        <guid>http://www.tfeserver.be/archives.xml</guid>
        <link>http://www.tfeserver.be/archives.xml</link>
        <pubDate>Wed, 25 Jan 2006 08:22:10 GMT</pubDate>
        <title>Archives</title>
        <description>Archives</description>
        <category>internal</category>
    </item>
    <item>
        <guid>http://www.tfeserver.be/download.xml</guid>
        <link>http://www.tfeserver.be/download.xml</link>
        <pubDate>Wed, 25 Jan 2006 08:22:10 GMT</pubDate>
        <title>Download</title>
        <description>Download</description>
        <category>internal</category>
    </item>
    <item>
        <guid>http://www.tfeserver.be/liens.xml</guid>
        <link>http://www.tfeserver.be/liens.xml</link>
        <pubDate>Wed, 25 Jan 2006 08:22:10 GMT</pubDate>
        <title>Liens</title>
        <description>Liens</description>
        <category>internal</category>
    </item>

</channel>

</rss>

