erlug
[Top] [All Lists]

Re: [Erlug] [OT] Piattaforma di Geek/Coder Blog

To: ERlug - Lista Pubblica <erlug@xxxxxxxxxxxxxx>
Subject: Re: [Erlug] [OT] Piattaforma di Geek/Coder Blog
From: Davide Bolcioni <db_erlug@xxxxxxxx>
Date: Sun, 04 Dec 2005 18:34:37 +0100
Enrico Zini ha scritto:

Visto che non ho un account blogger per postare commenti, posto qui:
l'uso di ${pippo:-pluto} non è posix sarca standard: quando si usa quel
costrutto, conviene mettere #!/bin/bash.

Interessante, hai una fonte ? Io ne ho una che dice il contrario:


http://www.opengroup.org/onlinepubs/007908799/xcu/chap2.html#tag_001_006_002

e d'altro canto qui invece suggerisce ${pippo-pluto}

  http://sources.redhat.com/autobook/autobook/autobook_217.html#SEC217

e da questa discussione otterrò materiale per il prossimo post.

Per questo, vim colora il
${a:-b} in rosso quando si usa #!/bin/sh e lo colora bene quando si usa
#!/bin/bash.

Per il resto, visto che in bash si usa echo che stampa tutti i
parametri, io preferisco mantenere quell'abitudine e avere una cosa
fatta cosí:

warn () {
        echo "$0:" "$@" >&2
}

Di per sè sarebbe meglio, ma complica die().

Rimane il problema di come dare un codice di errore specifico.  A me
capita raramente, e si potrebbe concepire qualcosa che passa il valore
"ad bànda":

die () {
        warn "$@"
        exit ${RES:-1}
}

In effetti il default migliore, come giustamente suggerisce Pod::Usage, sarebbe 2; comunque a me capita invece di scrivere utility che hanno codici di ritorno significativi e documentati e quindi mi serve una forma di die() che faciliti l'espressione del valore di ritorno.

Interessante è anche guardare i sorgenti di /lib/lsb/init-functions

Benchè non abbia nulla contro il codice portabile, anzi, il mio target
è più che altro l'amministratore che scrive script per le proprie macchine. Per scrivere roba da distribuire mi sembra meglio Perl.

Davide Bolcioni
--
There is no place like /home.

<Prev in Thread] Current Thread [Next in Thread>