[CSProjects] Parametrii in linia de comanda

Alex Eftimie alexeftimie at gmail.com
Mon Aug 13 23:37:06 EEST 2007


On 8/12/07, Vlad Dogaru <ddvlad at anaconda.cs.pub.ro> wrote:
> andrew b wrote:
> > Salut!
> >
> > Avem o mica problema in legatura cu parametrii din linia de comanda,
> > Alex sugereaza foarte tare sa folosesc getopt si astfel sa respect
> > standardul linux, eu nu prea sunt de accord pentru ca se pierde o
> > anumita logica.
> >
> > Cum arata in momentul actual main-ul "cspay -x xml -n -f ini" nu este
> > corect, daca e sa luam dupa Alex ar fi corect indiferent de ordine, el
> > mai si sugera sa eliminam parametrii "-i" si "-n" pe care ii dorea
> > lucian si astfel se mai elimina din problemele de logica.
>
> Eu cred că parametrii ar trebui să poată fi furnizaţi în orice ordine,
> ceea ce poate fi făcut relativ uşor chiar şi fără getopt(3) sau popt(3).
> Aceste două rutine mi s-au părut stufoase, deşi probabil nu sunt peste
> posibilităţile noastre de înţelegere, ci doar prea complicate pentru
> nevoile noastre. Şi nici nu ştiu despre compatibilitate: getopt e
> extensie GNU, nu e ANSI, or so I take it from the man page.
>
> > Mai era si problema daca fisierul xml era optional, Lucian mi-a zis ca
> > trebuie sa-l citesc mereu din linia de comanda, dar Alex mi-a zis ca
> > poate fi si unul implicit.
>
> /etc/cspay/global.xml sau /etc/cspay.xml mi se pare adecvat pentru o
> locaţie implicită.
>
> Dar... dacă transimtem fişierul de configurare în linia de comandă,
> scriptul PHP ar trebui să ştie de undeva locaţia fişierului de
> configurare. De unde? Din fişierul de configurare? Ciclic! Din alt
> fişier? Prea complicat!
>
> Cred că cea mai bună soluţie (deşi inflexibilă şi un compromis) ar fi să
> setăm la compilare calea către fişierul de configurare şi să eliminăm
> paramterul ăla. Şi să se poată schimba locul fişierului de configurare
> fie prin simpla editare a unei surse din cspay, fie printr-un parametru
> la eventualul script de configure.
>
> Vlad
> --
> Number one reason to date an engineer:
> The world does revolve around us; we pick the coordinate system.
> _______________________________________________
> CSProjects mailing list
> CSProjects at anaconda.cs.pub.ro
> http://anaconda.cs.pub.ro/cgi-bin/mailman/listinfo/csprojects
>
Total de acord cu Vlad (Andrei: foloseste getopt ^:)^) mai putin
partea cu eliminarea parametrului: cred ca e bine sa fie optional,
insa nu compilarea in programul c ci simpla editarea a fisierului PHP
corespunzator ar fi solutia. PHP e doar script, si a schimba o linie
de genul define(CSPAY_URL, '/etc/cspay/cspay.xml') mi se pare mai
simpla de cat adaugarea in configure sau in sursa c.

Parerea mea.
-- 
Alex Eftimie


More information about the cspay-dev mailing list