shell脚本引发的.......

RedPivot
shell脚本引发的.......

尊敬的各位前辈们,小菜我刚接触shell编程,小心翼翼地写了一个脚本,用来模拟 cd 命令,由于脚本中调用了 cd ,有大侠指点说在 bash中应该用 source yoursh.sh arg 的形式执行,在sh中应该用 . yoursh.sh arg 的形式执行。于是小菜我先把 s h切换到 bash,用上述形式取得了圆满成功,可当我在 sh 下用. yoursh.sh arg命令执行时老报错,望前辈们指点一二。
这是脚本内容:
#----------------------------------------------------------------
if
  (("$#" > 1 ))
then
  echo Inncorrect syntax
  echo Usage: $0 [directory]
  exit 1
fi

if (("$#"==0))
then
cd ~
exit 0
fi

if
        [ ! -d $1 ]
then
        echo $1 is not a directory, please check your input.
        echo Usage: $0 [ directory]
        exit 1
fi

cd $1
#----------------------------------------------------------------
这是在sh中用.方法得到的错误信息:
0: 没找到
0==0: 没找到
test: 需要参数


这究竟是咋回事呢?:outu: