Re: [SSFR] Comptage

[ Thread Index | Date Index | More debianworld.org/shellscript-fr Archives ]


On 2005-08-11 15:00:38 +0000, Daniel C wrote:
> Vincent Lefevre wrote:
> >Alternativement, apprendre perl, qui est plus simple à utiliser
> >que tous ces outils réunis, et constitue une solution portable.
> 
> Mmm, ça sent le troll ça non ?

Non.

> Le bash est plus abordable il me semble et permet de passer aux regexp 
> doucement.

Le problème de bash est qu'il n'est pas installé partout, alors
que perl est quasiment obligatoire à cause des nombreux scripts
Perl. Concernant des scripts shells "portables", je n'ai rien
vu d'autre que /bin/sh et /bin/csh (mais faire des scripts csh
est une grossière erreur, cf "Csh Programming Considered Harmful"
sur le web -- et c'est un des rares cas où je pense que tout le
monde est d'accord). Solaris utilise beaucoup de scripts ksh en
interne.

dixsept:~> ssh craffe bash
Connected to craffe.loria.fr (from 152.81.9.195)
bash: Command not found.

(Note: craffe est une machine sous Solaris.)

> Perl, ça fait peur ;-)

Pas si tu restes au Perl de base et si tu ne cherches pas à faire
de l'obfuscated. Dès que tu as des choses compliquées[*] à faire,
c'est plus simple que bash et compagnie.

[*] Expressions rationnelles évoluées, gestion avancée des signaux,
prise en compte des noms de fichiers avec des caractères spéciaux
dedans (notamment des espaces, qui sont souvent utilisées sur des
systèmes où la ligne de commande est quasiment absente, par exemple
Mac OS X, mais aussi Linux + KDE ou GNOME).

Quand un script Perl (simple) est buggé, ça se voit souvent tout de
suite. En revanche, pour les scripts shell, c'est plus difficile à
voir si on ne pense pas à les tester avec des noms de fichiers avec
caractères spéciaux et sur différentes plateformes.

-- 
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / SPACES project at LORIA



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/