[CLI Wiki] page changée : filtres:exemples
Une page dans votre Wiki a été ajoutée ou modifiée. Voici les détails Date : 2006/10/26 11:16 Browser : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.0.7) Gecko/20060830 Firefox/1.5.0.7 (Debian-1.5.dfsg+1.5.0.7-2) Adresse IP : 195.5.211.234 Nom d'hôte : aragorn.arseo.com Ancienne Révision : http://cli.asyd.net/home/filtres/exemples?rev=1161853834 Nouvelle Révision : http://cli.asyd.net/home/filtres/exemples Résumé : User : kwisatz @@ -6,23 +6,30 @@ Note: Ce code étant basé sur des hashes, des collisions peuvent se produire. Il est dangereux d'automatiser une action sur la sortie de ce script sans passer par une vérification avec diff au préalable. <code> - find . -type f -print0 | xargs -0 -irempl md5sum rempl | sort | tee myfile.md5 | cut -d' ' -f1 | uniq -d | xargs -irempl grep rempl myfile.md5 + find . -type f -print0 | xargs -0 -irempl md5sum rempl | sort | \ + tee myfile.md5 | cut -d' ' -f1 | uniq -d | xargs -irempl grep rempl myfile.md5 </code> (dup) + plus court, plus rapide, plus fiable, sans écriture disque : <code> find . -type f -print0 | xargs -0 sha1sum | sort -k 1,40 | uniq -D -w 40 </code> (kwisatz) + le même avec le nom des fichiers "identiques" sur la même ligne (désolé c'est pas beau, j'ai pas réussi avec sed...) : <code> - 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' + 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) + + + et pour finir, le même toujours, mais avec un diff sur chaque ===== 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/
participants (1)
-
noreply@asyd.net