选择shell

选择shell

我的root帐号登录时的shell环境是bash,我在写shell程序的时候,第一行用#!/bin/sh来指定用sh写脚本,应该不会对shell程序中运行的命令产生影响吧      
没什么影响。      
我是初学者,刚写了一个小程序试试,但一运行,发现不管输入y还是n,都会去备份,另外如何可以实现输入大小写都正常运行?我用a=y|Y好像不行

#!/bin/sh

echo "是否现在进行系统备份?(Y/N)"
read a
if a=y
then
  echo
  echo "正在进行系统备份,请稍候..."
  tar cvf /dev/st0 ./
fi      
#!/bin/sh

echo "是否现在进行系统备份?(Y/N)"
read ans
if (test "$ans" = "y") | (test "$ans" = "Y")
then
  echo
  echo "正在进行系统备份,请稍候..."
  tar cvf /dev/st0 ./
fi

我改成这样之后就正常了。      
版主救命啊,发现改成上面之后,输入Y没问题,但输入y却退出程序了

解决方法:if [ "$ans" = "y" -o "$ans" = "Y" ];then就OK了      
/bin/sh 一般就是 /bin/bash 的一个 symbol link