大家帮我看看这段语句有什么错吗?

sh/bash/dash/ksh/zsh等Shell脚本
回复
引火虫
帖子: 758
注册时间: 2006-08-28 9:08
来自: 安徽/安庆

大家帮我看看这段语句有什么错吗?

#1

帖子 引火虫 » 2006-09-26 13:54

代码: 全选

... ...
setenv PRO_MACHINE_TYPE $mc (前面有一段是关于“$mc”的,省略了。)
...   ...
set moz_plug = "J2RE14/plugin/platform/ns600" 
switch ($PRO_MACHINE_TYPE)
  case "hpux11_pa32"
  case "hpux_pa64"
    set moz_plug = "J2RE14/plugin/PA_RISC/ns600"
  breaksw
  case "i486_linux"
    set moz_plug = "J2RE14/plugin/i386/ns610"
  breaksw
  case "sun4_solaris"
  case "sun4_solaris_64"
    set moz_plug = "J2RE14/plugin/sparc/ns610"
  breaksw
  case "sgi_mips4"
  case "sgi_elf4"
    set moz_plug = "J2RE14/plugin32/sgi/ns610"
    setenv JAVA_HOME $PRO_DIRECTORY/$PRO_MACHINE_TYPE/obj/J2RE14
  breaksw
  default
  breaksw
endsw
运行的时候老是出错说:

代码: 全选

 line 467: syntax error near unexpected token `$PRO_MACHINE_TYPE'
 line 467: `switch ($PRO_MACHINE_TYPE)'
请问是语法错误吗?
附件里是这个文件的全文。下载后将扩展名去掉就可以了。
附件
proe1.rar
全文
(14.4 KiB) 已下载 147 次
头像
nobrain
帖子: 808
注册时间: 2005-08-25 13:58
来自: ustc
联系:

#2

帖子 nobrain » 2006-09-27 12:58

从第一行看,这是一个csh的脚本,要用csh运行,估计就没问题了。
bash没有这样的switch case结构,用的case --)。
记得maya的linux版,就必须要用csh.

代码: 全选

csh proe1
爱喝真猪奶茶的夜鸣猪
引火虫
帖子: 758
注册时间: 2006-08-28 9:08
来自: 安徽/安庆

#3

帖子 引火虫 » 2006-09-28 9:31

还是不行,

代码: 全选

if: Empty if
可又找不到倒底在哪!
xdsnet
帖子: 80
注册时间: 2006-02-28 15:44

#4

帖子 xdsnet » 2006-09-30 9:52

你可能需要首先确认脚本运行的条件吧,是BASH/SH 还是其它,一般是要求文件第一句用#!.....进行指定。
引火虫
帖子: 758
注册时间: 2006-08-28 9:08
来自: 安徽/安庆

#5

帖子 引火虫 » 2006-10-02 15:38

文件中已经指定了呀!
回复