[Python] Smettete di scrivere shell script (era: Re: Lanciare script da altro script)

Giampaolo Rodola' g.rodola a gmail.com
Mar 3 Mar 2015 02:09:54 CET


2015-03-01 10:38 GMT+01:00 Nicola Larosa <nico a teknico.net>:

> enrico franchi wrote:
> > Io sinceramente per lanciare 4 programmi in stecca scriverei 4 righe
> > di bash.
>
> Il riduzionismo degli shell script scritti "tanto sono quattro righe" è
> pernicioso.
>
> Non sono mai quattro righe: sappiamo bene che ogni frammento di codice ha
> la tendenza ad allungarsi, col tempo.
>
> La sintassi imbarazzante degli shell script disincentiva dallo scrivere
> codice robusto, che controlla i processi lanciati e ne gestisce i codici
> di ritorno.
>
> Disincentiva anche dallo scrivere test: avete mai visto shell script
> corredati di test, anche quelli molto lunghi? E purtroppo ce ne sono
> ancora tanti, di questi ultimi.
>
> L'assenza di documentazione e commenti nella totalità degli script in
> circolazione è poi ben al di là dell'imbarazzante.
>
> Abbiamo uno strumento molto migliore per scrivere script, anche corti,
> anche di sistema: usiamolo.
>
> E chi trovasse il codice basato su subprocess ancora troppo prolisso può
> usare quel gioiello della libreria "sh" <http://amoffat.github.io/sh/>.
>
> Per l'amore di quanto avete di più caro, uscite dagli anni '70: smettete
> di scrivere shell script. Completamente. Dimenticatene l'esistenza.
>
> --
> Nicola 'tekNico' Larosa <http://www.tekNico.net/>
>
> If you are an expert in the intricacies of C++, please consider this
> knowledge a kind of martial art - something a real master never uses.
>  - Yossi Kreinin, C++ FQA Lite, 2009
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>


Mmmm non sono d'accordissimo. Dipende dal task. Per scompattare un tar.gz è
più semplice usare sh/bash che python, idem per cancellare una directory o
file di una certa estensione ricorsivamente o aggiungere semplici filtri
tramite grep. Quando vuoi semplicemente fare una cosa di questo tipo in
cascata usare Python è semplicemente sconveniente.
Esiste una via di mezzo di cui io sono diventato un grande fan durante gli
anni, il Makefile, e purtroppo sono ancora troppo pochi i Pythonisti che lo
usano.


-- 
Giampaolo - http://grodola.blogspot.com
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20150303/6cc669a3/attachment-0001.html>


Maggiori informazioni sulla lista Python