diff --git a/SC1012.md b/SC1012.md index c0c5092..618ae45 100644 --- a/SC1012.md +++ b/SC1012.md @@ -22,14 +22,16 @@ var="$(printf 'foo\tbar')" # Equivalent alternative ``` or + ```sh # Literal, quoted linefeed line="foo bar" ``` + ### Rationale: -ShellCheck has found a `\t`, `\n` or `\r` in a context where they just become regular letter `t`, `n` or `r`. Most likely, it was intended as a tab, linefeed or carriage return. +ShellCheck has found a `\t`, `\n` or `\r` in a context where they just become regular letters `t`, `n` or `r`. Most likely, it was intended as a tab, linefeed or carriage return. To generate such characters (plus other less common ones including `\a`, `\f` and octal escapes) , use `printf` as in the example. The exception is for linefeeds that would be stripped by command substitution; in these cases, use a literal quoted linefeed instead. @@ -41,4 +43,4 @@ None. ### Related resources: -* Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc! \ No newline at end of file +* Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!