[Linux-bruxelles] help: question sort

Aldo info at brlspeak.net
Jeu 26 Juin 00:34:45 CEST 2008


On Wed, Jun 25, 2008 at 11:16:34PM +0100, Adrien Krunch Kunysz wrote:
> On Wed, Jun 25, 2008 at 10:23:43PM +0200, Aldo wrote:
> > On Wed, Jun 25, 2008 at 08:42:59PM +0200, Rémi Laurent wrote:
> > > echo Total `rev SRC|egrep -o '^.{1,CH}'|sort -u|rev|tee out.txt|wc -l`>>out.txt
> > 
> > Total 0  est le seul et unique résultat qu'l donne si je met ta ligne dans
> > un script et remplace SRC et CH par des $SRC et $CH pour lesquels j'ai ne
> 
> Ça sent les caractères spéciaux mal échappés mais quand j'en arrive là,
> personnellement je passe à Perl en général. J'écrirais bien un oneliner
> mais j'ai même pas lu la question originale en fait. Et puis si je le
> fais, Rémi va se sentir obligé de le faire en Ruby.

Beh voilà en pas propre mais en Ald0zien, le script qui tourne impec
et fais ce que je veux;
si t'arrives à faire ça en une ligne j'offre une choppe s'il y a des
pingustiques ou apérituxes :-) j'aime bien un accompagnement :

#!/bin/bash
function tri ()
{
rev $SRC >/tmp/rev.txt
cut -c 1-$CH /tmp/rev.txt >/tmp/cut.txt
uniq /tmp/cut.txt >/tmp/uniq.txt
rev /tmp/uniq.txt >/tmp/out.txt
#rev /tmp/uniq.txt |sort >/tmp/out.txt
echo "Total: " >>/tmp/out.txt
cat /tmp/out.txt | wc -l >>/tmp/out.txt
setleds -num
lynx /tmp/out.txt
exec $0
}

setleds +num
clear
read -p"TermiSort !

	Source (path/name.txt): " SRC
test -z "$SRC" && exit
read -p"	Char 1-" CH
test -z "$CH" && exit
tri
# end

Il doit trier des mots dans un dico inverse sur leur terminaison;
le limiteur 1-x me permet de lui demander de trier sur les x derniers
caractères.
Au final ça donne des 
era
eré
eri
eru
...

Le rev c'est d'une parr parce que le txt d'origine obtenu à partir de pages
html via html2text affiche tout à droite, genre
							    achètera
							administrera

Voilà, si après ça vous avez tj rien compris, je me couche parce uqe je dois
me lever tôt demian matin... :-)

Ald0 

PS: me demandez pas de poster le fichier dico, y en a pour 10M et 138186
mots.





Plus d'informations sur la liste de diffusion Linux-bruxelles