title: error :- test: ing: unary operator expected
body: <p>below is my script to run some sub commands. When i am running the script with <code>./test.sh sub_cmd $APP</code> it is running fine. But when i ran it like <code>test sub_cmd $APP</code> it throwing an error. </p>
  
  <p>I want to run the script without using <code>./</code></p>
  
  <p><code>error :- test: ing: unary operator expected</code></p>
  
  <pre><code>#!/bin/bash
  
  ProgName=$(basename $0)
  
  APP=${2?Need chart name}
  
  sub_help(){
      echo "Usage: $ProgName &lt;subcommand&gt; [options]\n"
  
  }
  
  sub_dep(){
      echo "Running 'dep' command."
      vi some_path/${APP}/templates/deployment.yaml
  }
  
  sub_ing(){
      echo "Running 'ing' command."
      vi some_path/${APP}/templates/ingress.yaml
  }
  
  sub_svc(){
      echo "Running 'ing' command."
      vi some_path/${APP}/templates/service.yaml
  }
  subcommand=$1
  case $subcommand in
      "" | "-h" | "--help")
          sub_help
          ;;
      *)
          shift
          sub_${subcommand} $@
          if [ $? = 127 ]; then
              echo "Error: '$subcommand' is not a known subcommand." &gt;&amp;2
              echo "       Run '$ProgName --help' for a list of known subcommands." &gt;&amp;2
              exit 1
          fi
          ;;
  esac
  </code></pre>