Revert a90e4e8b85cfe218325586176c97c3f4693e1896...7234f6235c6ed05907fd1cb754eb73c78d26c40a on SC2086

Vidar Holen
2021-04-05 12:44:13 -07:00
parent 75d146b08b
commit 54b0d89bb5

@@ -27,16 +27,16 @@ Strictly speaking, only expansions themselves need to be quoted, but for stylist
```sh ```sh
$HOME/$dir/dist/bin/$file # Unquoted (bad) $HOME/$dir/dist/bin/$file # Unquoted (bad)
"$HOME"/"$dir"/dist/bin/"$file" # Minimal quoting (good) "$HOME"/"$dir"/dist/bin/"$file" # Minimal quoting (good)
"${HOME}/${dir}/dist/bin/${file}" # Canonical quoting (good) "$HOME/$dir/dist/bin/$file" # Canonical quoting (good)
``` ```
When quoting composite arguments, make sure to exclude globs and brace expansions, which lose their special meaning in double quotes: `"${HOME}/${dir}/src/*.c"` will not expand, but `"${HOME}/${dir}/src"/*.c` will. When quoting composite arguments, make sure to exclude globs and brace expansions, which lose their special meaning in double quotes: `"$HOME/$dir/src/*.c"` will not expand, but `"$HOME/$dir/src"/*.c` will.
Note that `$( )` starts a new context, and variables in it have to be quoted independently: Note that `$( )` starts a new context, and variables in it have to be quoted independently:
```sh ```sh
echo "This ${variable} is quoted $(but this ${variable} is not)" echo "This $variable is quoted $(but this $variable is not)"
echo "This ${variable} is quoted $(and now this "$variable" is too)" echo "This $variable is quoted $(and now this "$variable" is too)"
``` ```
### Exceptions ### Exceptions