微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 为什么下面的perl,linux可以识别,windows不能?

为什么下面的perl,linux可以识别,windows不能?

时间:10-02 整理:3721RD 点击:
请教为什么下面的perl,linux可以识别,windows不能?

system "perl -p -i -e 's/H_Resolution = \\d+ /H_Resolution = $hres /g' $file ";


can't find string terminator "" anywhere before EOF at -e line 1

你用的工具是?activeperl?
然后你打开的文件的编码方式是?LINUX下和WIN下的格式是有差异的,如果你用notepad之类的编辑工具打开可能会自动转换了。
最简单的,WIN下的文本在LINUX下用VIM打开,会看到每一行后面有^M,如果你的脚本调用的命令涉及到这块,可能会出错。

1.我用的是activeperl
2.我用vim打开,没有^M
3.perl -p -i -e 's/H_Resolution = \\d+ /H_Resolution = $hres /g' $file这个命令本身没有问题,但是如果,套用system,提示有语法错误。
请求指点,应该是双引号和单引号在activeperl下面的识别问题吧


不是你提到的^M的问题额

你win的system 有perl吗?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top