mirror of
https://github.com/koalaman/shellcheck.git
synced 2025-10-03 19:29:44 +08:00
Edits of code examples.
17
SC1012.md
17
SC1012.md
@@ -7,6 +7,11 @@
|
||||
$ var=foo\tbar
|
||||
$ printf '<%s>\n' "$var"
|
||||
<footbar>
|
||||
|
||||
$ var=foo\\tbar
|
||||
$ printf '<%s>\n' "$var"
|
||||
<foo\tbar>
|
||||
|
||||
```
|
||||
|
||||
or
|
||||
@@ -16,14 +21,20 @@ or
|
||||
$ var=foo\nbar
|
||||
$ printf '<%s>\n' "$var"
|
||||
<foonbar>
|
||||
|
||||
$ var=foo\\nbar
|
||||
$ printf '<%s>\n' "$var"
|
||||
<foo\nbar>
|
||||
```
|
||||
|
||||
|
||||
### Correct code:
|
||||
|
||||
```sh
|
||||
$ var="foo$(printf '\t')bar" # As suggested in warning
|
||||
$ printf '<%s>\n' "$var"
|
||||
<foo bar>
|
||||
|
||||
$ var="$(printf 'foo\tbar')" # Equivalent alternative
|
||||
$ printf '<%s>\n' "$var"
|
||||
<foo bar>
|
||||
@@ -32,7 +43,7 @@ $ printf '<%s>\n' "$var"
|
||||
or
|
||||
|
||||
```sh
|
||||
# Literal, quoted newline
|
||||
$ # Literal, quoted newline
|
||||
$ line="foo
|
||||
> bar"
|
||||
$ printf '<%s>\n' "$line"
|
||||
@@ -43,7 +54,7 @@ bar>
|
||||
or
|
||||
|
||||
```sh
|
||||
# Newline using ANSI-C quoting
|
||||
$ # Newline using ANSI-C quoting
|
||||
$ line=$'foo\nbar'
|
||||
$ printf '<%s>\n' "$line"
|
||||
<foo
|
||||
@@ -59,10 +70,12 @@ To generate such characters (plus other less common ones including `\a`, `\f` an
|
||||
|
||||
Other characters like `\z` generate a [[SC1001]] info message, as the intent is less certain.
|
||||
|
||||
|
||||
### Exceptions:
|
||||
|
||||
None.
|
||||
|
||||
|
||||
### Related Resources:
|
||||
https://www.gnu.org/software/bash/manual/html_node/Bash-Builtins.html#index-printf
|
||||
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/printf.html
|
||||
|
Reference in New Issue
Block a user