The man page currently says this:

    Since Wget uses GNU getopt to process command-line arguments, every option
    has a long form along with the short one. Long options are more convenient
    to remember, but take time to type. You may freely mix different option
    styles, or specify options after the command-line arguments. Thus you may
    write:

        wget -r --tries=10 http://fly.srk.fer.hr/ -o log

However this is not strictly true. You can only specify options after
command-line arguments if you do not have POSIXLY_CORRECT set. GNU getopt
disables the reordering of arguments if this argument is set.

For a copy of GNU getopt that's included in the system libraries that's useful
since it means you can run scripts designed to run a POSIX system and it also
prevents you from accidentally introducing non-portable syntax.

However wget includes an internal copy of GNU getopt. In that case it would be
reasonable for wget to rip out this feature so that the behaviour always
matches the documentation.

So you should either rip out the POSIXLY_CORRECT handling or document that the
reordering is a convenience feature for users and portable scripts should
never use it or they risk failing unexpectedly for other users.

-- 
greg

Reply via email to