SC3042 – ShellCheck Wiki

See this page on GitHub


In POSIX sh, set flag --default is undefined

(or any other option)

Problematic code:

set --default

Correct code:

Switch to a shell that supports these options, such as Ksh:

set --default


Your script uses a shell feature not supported by the shebang. Either rewrite the script to be portable, or change the shebang to explicitly require a shell like Ksh.

Most shell specific set flags are hard to emulate in POSIX, so use your best judgement as to whether you can make do without them, or if you should require a shell that supports them.



ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.