Une page dans votre Wiki a été ajoutée ou modifiée. Voici les détails : Date : 2006/10/27 12:45 Navigateur : Mozilla/5.0 (X11; U; Linux x86_64; fr; rv:1.8.0.4) Gecko/20060406 Firefox/1.5.0.4 (Debian-1.5.dfsg+1.5.0.4-1) Adresse IP : 82.253.200.65 Nom d'hôte : lns-bzn-46-82-253-200-65.adsl.proxad.net Ancienne révision : http://cli.asyd.net/home/filtres/exemples?rev=1161856696 Nouvelle révision : http://cli.asyd.net/home/filtres/exemples Résumé : Utilisateur : mc @@ -25,8 +25,32 @@ find . -type f -print0 | xargs -0 sha1sum | sort -k 1,40 | uniq -D -w 40 | \ perl -e '@f=();sub p{print "@f\n";@f=()};while(<>){chop;($h,$f)=split / /;p if $g and $h ne $g;$g=$h;push @f,$f};p' </code> (kwisatz) + + 3 remarques : + - l'indentation ameliore conciderablement la lisibilité + - je pense que xargs sans -n c'est mal car tu risques facilement de faire deborder ta ligne de commande + - si deja tu utilises perl, les autres filtres deviennent inutiles : + + <code bash> + find . -type f -print0 | + xargs -n20 -0 sha1sum | + perl -lne ' + $hash = substr($_,0,40); + $file = substr($_,42); + push @{ $a{$hash} } , $file; + END { + for ( values %a ) { + print "@$_" if $#$_; + } + } + ' + </code> + + Pour le meme nombre de lignes, on a une version pure perl en utilisant Digest::Sha1. + + (mc) ===== Additionner les nombres de chaque colonne d'un fichier avec num-utils ===== voir [[filtres:autres#num-utils]] <code:bash> -- Ce message a été généré par DokuWiki http://cli.asyd.net/home/