SC2258 – ShellCheck Wiki

See this page on GitHub

Sitemap


The trailing comma is part of the value, not a separator. Delete or quote it.

Problematic code:

for f in foo, bar, baz
do
  echo "$f"
done

Correct code:

for f in foo bar baz
do
  echo "$f"
done

or

for f in "foo," "bar," "baz,"
do
  echo "$f"
done

Rationale:

ShellCheck found a for loop where the items appear to be separated by commas. These will be treated as literal commas. If the commas are part of the value, enclose them in quotes, or remove them.

Exceptions:

None


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