Sample Header Ad - 728x90

getopt, getopts or manual parsing - what to use when I want to support both short and long options?

78 votes
5 answers
69976 views
Currently I'm writing a Bash script which has the following requirements: * it should run on a wide variety of Unix/Linux platforms * it should support both short and (GNU) long options I know that getopts would be the preferred way in terms of portability but AFAIK it doesn't support long options. getopt supports long options but the BashGuide recommends strongly against it: > Never use getopt(1). getopt cannot handle empty arguments strings, or > arguments with embedded whitespace. Please forget that it ever > existed. So, there still is the option of manual parsing. This is error-prone, produces quite some boilerplate code, and I need to handle errors by myself (I guess getopt(s) do error-handling by themselves). So, what would be the preferred choice in this case?
Asked by helpermethod (2052 rep)
Jan 29, 2013, 11:37 AM
Last activity: Aug 13, 2024, 01:54 PM