You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Joachim Ansorg edited this page Nov 12, 2021
·
2 revisions
Unexpected parameters after condition. Missing &&/||, or bad expression?
Problematic code:
[ "$1" ] input="$1"
Correct code:
[ "$1" ] && input="$1"
Rationale:
ShellCheck found characters (other than redirections) after the ] or ]] in a test expression. This is not valid.
This sometimes happens when there was an additional expression or command, but joining || or && is missing. Alternatively, it could happen due to typos (like [[ $1 ]]] with an extra ]), or generally from malformed test expressions.
Exceptions:
None
Related resources:
Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!