I need to write a bash script, and would like it to parse unordered parameters of the format:

scriptname --param1 <string> --param2 <string> --param3 <date>

Is there a simple way to accomplish this, or am I pretty much stuck with $1, $2, $3?


(note - I don't need long parameter names - single letters would be fine too)

  • why did you post the same thing on stackoverflow and here? This is more programming related anyway. – John T May 6 '09 at 3:34
  • 1
    That is exactly why. – Brent May 6 '09 at 3:46

You should use getopt.

  • Thanks - That put me on the right track - I think that I actually want getopts - as it is apparently simpler, and I don't need the long names – Brent May 6 '09 at 3:15
  • Cool, but you need to fix your question then :) It specifically lists long param names in the example. – pjz May 6 '09 at 3:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.