flex无法在sh脚本中打开文件

时间:2016-11-15 07:49:36

标签: cygwin flex-lexer

我在Windows上使用flex for cygwin包来构建词法分析器。 我创建了带有规则的文件test.lex 当我在命令行中使用此命令时

flex -i test.lex
cc lex.yy.c -lfl
./a

工作正常。但是当我尝试使用此命令生成sh文件(compile_flex.sh)并运行文件

./compile_flex.sh

我收到了错误

flex: can't open test.lex

我尝试将不同的路径放到我的文件

~/test.lex
/home/user/test.lex
c:\\cygwin64\\home\\user\\test.lex

但它不起作用!我总是收到没有找到文件的消息。 当我把命令

vi test.lex

在我的.sh文件中,它运行良好,文件在vim中打开

1 个答案:

答案 0 :(得分:1)

我想出了我的问题。我使用Windows编辑器(记事本++)来创建.sh文件。当我在首选项中将行分隔符从\ n \ r更改为\ n时,它工作正常