Re: [#!/fr] les commandes jot (BSD) et seq (GNU)

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Laurent PERTOIS
Date:  
À: La liste francophone des scripts shell
Sujet: Re: [#!/fr] les commandes jot (BSD) et seq (GNU)
On 2 déc. 08, at 21:38, Patrick Proniewski wrote:

>>
>> Bref, pas bien logique pour le non-matheux que je suis (enfin,
>> disons que le dernier me plaît plus quoi...)
>
> C'est logique en fait, car par défaut, jot ne garanti pas un pas
> entier constant, il adapte son incrément pour obtenir la série que
> tu souhaites en incluant les bornes que tu indiques.


Ah ok, donc je comprends mieux, ça se tient.

> Si tu précises un formatage "avec virgule", tu verras qu'en fait il
> utilise un incrément avec décimales, pour obtenir une série
> mathématiquement correcte. C'est l'arrondi (par défaut à l'entier)
> qui n'est pas régulier et qui trouble son monde :
>
> $ jot -w '%g' 5 1 1000
> 1
> 250.75
> 500.5
> 750.25
> 1000
>


Ok, là je vois mieux et effectivement c'est plus que logique vu le
point de départ et la façon de faire.

>
>
>> Par contre, si on règle le pas, ça me paraît plus "cohérent" :
>>
>> $ jot 5 1 1000 250
>> 1
>> 251
>> 501
>> 751
>
> Oui, c'est ce que je précise dans mon post, en imposant le pas, il
> prend le comportement de seq, qui est d'utiliser l'incrément pour se
> rapprocher le plus possible de la valeur cible, sans forcément
> l'atteindre.
>


Vivi, mais comme je n'avais pas capté le comportement sans pas, la
différence n'était pas claire, avec les décimales ça va beaucoup mieux
et le comportement est clair et logique.

>
>> Sinon, euh, ben, je sais que tu ne limites ni ta liste ni ton blog
>> à Mac OS X mais seq n'y est pas installé par défaut, alors non
>> seulement il va falloir prévenir pour le coup des boucles (ça c'est
>> fait) mais aussi pour l'installation de la commande. Remarque, je
>> suppose que sur un linux jot n'est pas non plus par défaut. Bref,
>> c'est un peu le bordel quoi pour celui qui scripte, comdab' ;-)
>
>
> Oui, j'ai cru que ce serait clair à la lecture, même si ce n'est pas
> explicite : seq est GNU ie. présent sur Linux, jot est BSD ie.
> présent sur FreeBSD, Mac OS X, et les autres dérivés du 4.3BSD.


Moui, mais euh, comment dire, j'ai au moins un outil GNU sur mon Mac
OS X, gcc ;-) (bon, ok, il n'y est pas par défaut il faut installer
XCode) mais il pourrait y en avoir d'autres. Mais bon, rien de
dramatique, non plus.

> Sur linux, tu peux assez simplement installer jot avec les
> gestionnaires de packages adaptés. Sur Mac OS X, je ne sais pas si
> c'est dispo dans fink/Macports.
>


Bah, je n'ai pas cherché mais à mon avis ça fait partie des GNU
coreutils qui s'installent très bien avec fink/macports.

> Je réalise maintenant que j'aurai du au moins ajouter les résultats
> des commandes, car pour le coup, la personne qui n'a pas les deux
> est complètement frustrée !



Ah voilà, c'est donc ça, tu m'as frustré, je le savais :-D

Merci de ces précisions,

--
Laurent Pertois
"The Mac OS X kernel should never panic because, when it does, it
seriously inconveniences the user."
Technical Note TN 2118 : Kernel Core Dumps



_______________________________________________
archives :
http://listes.patpro.net/list/sshfr.fr.html
http://listes.patpro.net/mailman/listinfo/script_shell_fr