1, shell var

$ word=world

$ echo hello | awk '{ print $1,$word; }'  # Both are treated as awk variables, so it
                                          # won't work
$ echo hello | awk "{ print $1,$word; }"  # Both are treated as bash variables, so $1
                                          # will not be hello, and it will fail if $1
                                          # is empty or unset.
$ echo hello | awk "{ print \$1,$word; }" # Since the $ in \$1 is escaped, bash
                                          # will change it to $1 and leave it alone
                                          # for awk to interpret. $word is replaced by
                                          # bash, with $word's value.