我正在MiddleBury评估中测试立体声算法。我在Windows中使用cygwin运行该程序。
编译工具后,我已经运行了代码。根据指南,我需要编写如下内容:
./runalg
但它说:
$ ./runalg -bash:./runalg:/ bin / csh:错误的解释器:没有这样的文件或目录
所以,我改变了
bash。
在这种情况下,错误如下。
$ bash ./runalg
./runalg:第25行:意外令牌“ set”附近的语法错误
./runalg:第25行:`if($#argv> 3)set suffix = $ 4'**
有谁可以建议我如何使用此评估以及为什么会出现此问题?
csh和bash / ksh类型的shell具有完全不同的语法。除了非常简单的命令外,仅通过更改解释器就无法获得兼容性。
如果您具有bash脚本和ksh解释器,则可以在大多数情况下进行一些改动才能使该脚本正常工作,但是在此情况下根本无法实现!
在csh中:
set suffix = $4
会翻译成
suffix=$4
(或者也许export suffix=$4
我不知道确切的变量在csh中传播,但这不是重点)
最好的方法是实际csh
在Cygwin中安装。
根据该论坛的介绍,Cygwin中未默认安装C Shell。启动安装程序,然后选择软件包的“ Shells”集合,然后选择csh进行安装。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句