title: How does a hadoop shell command like "hadoop fs -ls" works?
body: <ol>
  <li>I would like to know How does a hadoop shell command like "hadoop fs -ls" be interpreted by hadoop compiler?</li>
  <li>What happens in the background when I type "hadoop fs -ls /user/hadoop/someDirName"</li>
  <li>If I want to create my own shell command how do I do it?</li>
  </ol>
  
  <p>Thanks in advance.
  I would appreciate if anyone could share links to source code with examples.</p>