老大,帮忙看看程序

老大,帮忙看看程序

各位老大,帮忙看看,我从咱们论坛里下载的一个教程了摘了一段程序,可是总是执行不成功。高手帮忙看看。本人水平较低,还希望跟各位老大多学习了!
#!/bin/sh
   ftype=`file "$1"`
   case "$ftype" in
            "$1: Zip archive"*)
                      unzip "$1" ;;
            "$1: gzip compressed"*)
                      gunzip "$1" ;;
            "$1: bzip2 compressed"*)
                      bunzip2 "$1" ;;
             *) error "File $1 can not be uncompressed with smartzip";;
              esac      
为什么执行不成功? 什么错误信息?
为了能更好的利用 Eden 论坛, 建议你先看看本版置顶的几个帖子       
[root@zhanglj target_v]# cat smartzip
#!/bin/sh
ftype='file "$1"'
case "$ftype" in
"$1: Zip archive"*)
unzip "$1";;
"$1: gzip compressed"*)
gunzip "$1";;
"$1: bzip2 compressed"*)
bunzip2 "$1";;
*) error File $1 can not be uncompressed with smartzip";;
esac
[root@zhanglj target_v]# ./smartzip voip_128_new.gz
./smartzip: line 10: unexpected EOF while looking for matching `"'
./smartzip: line 12: syntax error: unexpected end of file
[root@zhanglj target_v]#      
原因很清楚了: ./smartzip: line 10: unexpected EOF while looking for matching `"'
为了能更好的利用 Eden 论坛, 建议你先看看本版置顶的几个帖子       
我把以上程序改成了如下:
#!/bin/sh
ftype='file "$1"'
case "$ftype" in
"$1: Zip archive"*)
unzip "$1";;
"$1: gzip compressed"*):
gunzip "$1";;
"$1: bzip2 compressed"*)
bunzip2 "$1";;
*)
"error File $1 can not be uncompressed with smartzip";;
esac
在error前面加“后,在执行,显示如下错误。
[root@zhanglj target_v]# cat smartzip
#!/bin/sh
ftype='file "$1"'
case "$ftype" in
"$1: Zip archive"*)
unzip "$1";;
"$1: gzip compressed"*):
gunzip "$1";;
"$1: bzip2 compressed"*)
bunzip2 "$1";;
*)
"error File $1 can not be uncompressed with smartzip";;
esac
[root@zhanglj target_v]# ./smartzip mysql-4.1.13.REDH9.tar.gz
./smartzip: line 11: error File mysql-4.1.13.REDH9.tar.gz can not be uncompressed with smartzip: command not found
[root@zhanglj target_v]#
不知道是为什么?还请指点一二。      
原因很清楚了: ./smartzip: line 11: error File mysql-4.1.13.REDH9.tar.gz can not be uncompressed with smartzip: command not found
看来你对 shell scripting 基本上没什么概念, 建议先找些入门儿的资料学习一下
为了能更好的利用 Eden 论坛, 建议你先看看本版置顶的几个帖子       
#!/bin/sh
ftype=`file "$1"`
case $ftype in
"$1: Zip archive"*)
unzip "$1";;
"$1: gzip compressed"*):
gunzip "$1";;
"$1: bzip2 compressed"*)
bunzip2 "$1";;
*)
echo "error File $1 can not be uncompressed with smartzip";;
esac      
非常感谢大家,原因终于找到了,感谢两位帮忙!
原来,ftype=`file "$1"`语句中的`和‘是不同的。应该用`而不是’,我一直写成‘,所以就总是有问题。