SC3063 – ShellCheck Wiki

See this page on GitHub

Sitemap


In POSIX sh, test -R and namerefs in general are undefined.

Problematic code:

if [ -R foo ]
then
  ..
fi

Correct code:

POSIX sh has no concept of namerefs. Rewrite your logic to not depend on them, or switch to Bash or Ksh.

Rationale:

[ -R name ] is used to check whether name is a nameref. Since POSIX sh has no namerefs, either use a shell that does, or rewrite to not need namerefs.

Exceptions:

None


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