Within this chapter, I really hope that we have introduced many new and interesting choices to you. This was an area with a wide range where we began by recapping the use of test and discovered that the [ is a command not a syntax construct. The main effect that it is a command is on white space and we looked at the need to quote variables.
Even though we may commonly call variables variables, we have also seen that their correct name, especially in documentation, is parameters. Reading a variable is a parameter expansion. Understanding parameter expansion can help us understand the use of the keyword [[. The double square brackets are not commands and do not expand the parameters. This means that we do not need to quote variables even if they do contain white space. Moreover, we can use advanced tests with double square brackets, such as pattern matching or regular expressions...