The mentioned parser error was in this test expression. Open
if [ "$*" = "-A curl -s https://api.ipify.org?format=json | grep -Eo "[0-9.]*" ]; then
- Read upRead up
- Exclude checks
The mentioned parser error was in ...
This info warning points to the start of what ShellCheck was parsing when it failed. See [[Parser error]] for example and information.
Notice
Original content from the ShellCheck https://github.com/koalaman/shellcheck/wiki.
This is actually an end quote, but due to next char it looks suspect. Open
echo "12.34.56.78"
- Read upRead up
- Exclude checks
This is actually an end quote, but due to next char it looks suspect.
See companion warning [[SC1078]].
Notice
Original content from the ShellCheck https://github.com/koalaman/shellcheck/wiki.
Couldn't parse this double quoted string. Open
echo "12.34.56.78"
- Read upRead up
- Exclude checks
Couldn't parse this ...
This parsing error points to the structure ShellCheck was trying to parse when a parser error occurred. See [[Parser error]] for more information.
Notice
Original content from the ShellCheck https://github.com/koalaman/shellcheck/wiki.
Expected end of double quoted string. Fix any mentioned problems and try again. Open
fi
- Read upRead up
- Exclude checks
Unexpected ..
Note: There is a [known bug](../issues/1036) in the current version when [directives](../wiki/Directive) appear within then
clauses of if
blocks that causes Shellcheck to report SC1072 on otherwise valid code. Avoid using directives within then
clauses - instead place them at the top of the if
block or another enclosing block. This is fixed on the online version and the next release.
See Parser Error.
Notice
Original content from the ShellCheck https://github.com/koalaman/shellcheck/wiki.
Did you forget to close this double quoted string? Open
if [ "$*" = "-A curl -s https://api.ipify.org?format=json | grep -Eo "[0-9.]*" ]; then
- Read upRead up
- Exclude checks
Did you forget to close this double quoted string?
Problematic code:
greeting="hello
target="world"
Correct code:
greeting="hello"
target="world"
Rationale:
The first line is missing a quote.
ShellCheck warns when it detects multi-line double quoted, single quoted or backticked strings when the character that follows it looks out of place (and gives a companion warning [[SC1079]] at that spot).
Exceptions
If you do want a multiline variable, just make sure the character after it is a quote, space or line feed.
var='multiline
'value
can be rewritten for readability and to remove the warning:
var='multiline
value'
As always `..`
should be rewritten to $(..)
.
Notice
Original content from the ShellCheck https://github.com/koalaman/shellcheck/wiki.