greeting="hello
target="world"greeting="hello"
target="world"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).
If you do want a multiline variable, just make sure the character after it is a quote, space or line feed.
var='multiline
'valuecan be rewritten for readability and to remove the warning:
var='multiline
value'As always `..` should be rewritten to
$(..).
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.