bash empty string/command
<p>I found some strange thing in bash and I can't understand how it works.</p>

<pre><code>[test ~]$ a=""
[test ~]$ $a &amp;&amp; echo 1
1

[test ~]$ $a
[test ~]$ echo $?
0
</code></pre>

<p>Why does $a (which is empty) return 0? Is it somehow transformed to empty command?
If I add quotes or write empty string before <code>&amp;&amp;</code>, it will return error. While empty command returns 0.</p>

<pre><code>[test ~]$ "$a" &amp;&amp; echo 1
-bash: : command not found

[test ~]$ "" &amp;&amp; echo 1
-bash: : command not found

[test ~]$ `` &amp;&amp; echo 1
1
</code></pre>

<p>So, what is happening when I type $a?</p>