Skip to content
Pascal Morin edited this page Jul 31, 2020 · 4 revisions

Did you mean IFS=$'\t' ?

Problematic code:

IFS="\t"

Correct code:

IFS=$'\t'

or POSIX:

IFS="$(printf '\t')"

Rationale:

IFS="\t" splits on backslash and the letter "t". IFS=$'\t' splits on tab.

Exceptions

It's extremely rare to want to split on the letter "n" or "t", rather than linefeed or tab.

Related resources

See https://github.com/koalaman/shellcheck/wiki/SC1012

ShellCheck

Each individual ShellCheck warning has its own wiki page like SC1000. Use GitHub Wiki's "Pages" feature above to find a specific one, or see Checks.

Clone this wiki locally
You can’t perform that action at this time.