Re: Checking for right # of args in a shell script (Was: a sed question)

Liste des GroupesRevenir à cu shell 
Sujet : Re: Checking for right # of args in a shell script (Was: a sed question)
De : gazelle (at) *nospam* shell.xmission.com (Kenny McCormack)
Groupes : comp.unix.shell
Date : 20. Dec 2024, 18:43:34
Autres entêtes
Organisation : The official candy of the new Millennium
Message-ID : <vk4ac6$1v4c6$1@news.xmission.com>
References : 1 2 3 4
User-Agent : trn 4.0-test77 (Sep 1, 2010)
In article <vk43n0$3gtg6$1@dont-email.me>,
Janis Papanagnou  <janis_papanagnou+ng@hotmail.com> wrote:
...
Agreed, in general, but in practice, the need rarely arises.
>
I certainly disagree on this; if you have 10..19 (or 100..199 etc.)
arguments the '<' test just doesn't trigger but '-lt' does. I mean,
why use a wrong operator. If it will only in specific cases produce
correct results, or if it produced in most cases correct results;
it's just the wrong thing.

We're not talking about the same thing.

 
The idiomatic way to do this is just:
 
    [ $# = 2 ] || usage()
>
Yes, but I don't use that but prefer (like you) [[...]], an in, say,

[ ] is easier in the simple cases.  But, whatever, either way is fine.

Also, when I need to do more complex arg verification, I use bash's [[ ]]
mechanism (Yes, I know OP is using /bin/sh, but there is no reason nowadays
not to use bash).
>
If the OP is on Linux the 'sh' might actually be a Bash. If he's,

I assume Linux unless/until I hear otherwise.  And I tend to also assume
some Debian-based Linux (again, unless/until ...).  In Debian-based
Linuxes, sh is "dash", which is pretty much a minimal
subset/POSIX-compliant version of the shell.  So, [[ ]] isn't available
there.

--
The randomly chosen signature file that would have appeared here is more than 4
lines long.  As such, it violates one or more Usenet RFCs.  In order to remain
in compliance with said RFCs, the actual sig can be found at the following URL:
http://user.xmission.com/~gazelle/Sigs/GodDelusion

Date Sujet#  Auteur
18 Dec 24 * a sed question64Salvador Mirzo
18 Dec 24 +- Re: a sed question1John-Paul Stewart
19 Dec 24 +* Re: a sed question16Ralf Damaschke
19 Dec 24 i`* Re: a sed question15Salvador Mirzo
20 Dec 24 i `* Re: a sed question14Ralf Damaschke
20 Dec 24 i  `* Re: a sed question13Kenny McCormack
21 Dec 24 i   `* Re: a sed question12Ralf Damaschke
21 Dec 24 i    `* Re: a sed question11Kaz Kylheku
21 Dec 24 i     +* sed... (Was: a sed question)8Kenny McCormack
21 Dec 24 i     i`* Re: sed... (Was: a sed question)7Kaz Kylheku
21 Dec 24 i     i +* Re: sed... (Was: a sed question)4Janis Papanagnou
21 Dec 24 i     i i`* Re: sed... (Was: a sed question)3Janis Papanagnou
21 Dec 24 i     i i `* Re: sed...2Keith Thompson
22 Dec 24 i     i i  `- Re: sed...1Janis Papanagnou
21 Dec 24 i     i `* Re: sed... (Was: a sed question)2Lars Poulsen
22 Dec 24 i     i  `- Re: sed... (Was: a sed question)1Kaz Kylheku
21 Dec 24 i     +- Re: a sed question1Janis Papanagnou
22 Dec 24 i     `- Re: a sed question1Ralf Damaschke
20 Dec 24 +* Re: a sed question18Janis Papanagnou
20 Dec 24 i+* Checking for right # of args in a shell script (Was: a sed question)3Kenny McCormack
20 Dec 24 ii`* Re: Checking for right # of args in a shell script (Was: a sed question)2Janis Papanagnou
20 Dec 24 ii `- Re: Checking for right # of args in a shell script (Was: a sed question)1Kenny McCormack
21 Dec 24 i+* Re: a sed question13Salvador Mirzo
21 Dec 24 ii+* Re: a sed question7Janis Papanagnou
21 Dec 24 iii`* Re: a sed question6Keith Thompson
22 Dec 24 iii `* Re: a sed question5Janis Papanagnou
22 Dec 24 iii  +* Re: a sed question2Keith Thompson
22 Dec 24 iii  i`- Re: a sed question1Janis Papanagnou
22 Dec 24 iii  `* Re: a sed question2Lawrence D'Oliveiro
22 Dec 24 iii   `- Re: a sed question1Janis Papanagnou
21 Dec 24 ii+* Re: a sed question4Andy Walker
21 Dec 24 iii+- Re: a sed question1Janis Papanagnou
21 Dec 24 iii`* Re: a sed question2Salvador Mirzo
21 Dec 24 iii `- Re: a sed question1Janis Papanagnou
21 Dec 24 ii`- Re: a sed question1Helmut Waitzmann
22 Dec 24 i`- Re: a sed question1Janis Papanagnou
21 Dec 24 `* Re: a sed question28Ed Morton
21 Dec 24  `* Re: a sed question27Lawrence D'Oliveiro
22 Dec 24   +* Re: a sed question12Janis Papanagnou
22 Dec 24   i`* Re: a sed question11Lawrence D'Oliveiro
22 Dec 24   i +* Re: a sed question9Keith Thompson
22 Dec 24   i i`* Re: a sed question8Lawrence D'Oliveiro
22 Dec 24   i i `* Re: a sed question7Keith Thompson
22 Dec 24   i i  `* Re: a sed question6Lawrence D'Oliveiro
22 Dec 24   i i   `* Re: a sed question5Keith Thompson
23 Dec 24   i i    `* Re: a sed question4Eric Pozharski
23 Dec 24   i i     `* Re: a sed question3Kenny McCormack
23 Dec 24   i i      +- Re: a sed question1Kaz Kylheku
24 Dec 24   i i      `- Re: a sed question1Eric Pozharski
22 Dec 24   i `- Re: a sed question1Janis Papanagnou
22 Dec 24   +- Re: a sed question1Kenny McCormack
22 Dec 24   +- Re: a sed question1Kaz Kylheku
23 Dec 24   `* Re: a sed question12Ed Morton
23 Dec 24    +- How to solve The Miracle (was Re: a sed question)1Janis Papanagnou
23 Dec 24    `* Re: a sed question10Lawrence D'Oliveiro
24 Dec 24     +* Re: a sed question4Keith Thompson
24 Dec 24     i`* Re: a sed question3Lawrence D'Oliveiro
23 Mar 25     i `* Re: a sed question2anthk
24 Mar 25     i  `- Re: a sed question1Lawrence D'Oliveiro
24 Dec 24     `* Re: a sed question5Ed Morton
24 Dec 24      +- Dealing with four-year-olds... (Was: a sed question)1Kenny McCormack
24 Dec 24      `* Re: a sed question3Lawrence D'Oliveiro
24 Dec 24       `* Re: a sed question2Kaz Kylheku
25 Dec 24        `- Arguing with a four-year-old (Was: a sed question)1Kenny McCormack

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal