Chinaunix

标题: 关于windows下perl程序中调用另一个perl程序 [打印本页]

作者: xiumu2280    时间: 2013-09-29 17:01
标题: 关于windows下perl程序中调用另一个perl程序
之前一直在linux下使用,现在换到windows.
在linux下如果用system或者``调用perl程序之后,perl会等到调用之中的perl程序运行完,才进行下一个程序的运行。
今天换到window下面,发现程序没有运行完。
我把调用路径放到``下,似乎根本没有运行···直接读过去了···
何解··
作者: mcshell    时间: 2013-09-29 17:27
代码贴出来{:3_202:}
作者: sinian126    时间: 2013-09-29 17:31
提示: 作者被禁止或删除 内容自动屏蔽
作者: xiumu2280    时间: 2013-09-30 08:53
代码就是这样,用的use Getopt::Long;模块,上一个程序生成的文件,下一个程序用作输入。
  1. `bin\10\auto_all_match_1.pl -i $in -o $in._1`;
  2.                 `bin\10\auto_all_format_3.pl -i $in._1`;
  3.                 `bin\10\auto_all_format_4_useless.pl -i $in._1.no`;
  4.                 `bin\10\auto_all_format_3_deaf.pl -i $in._1.deaf`;
  5.                 `del $in._1 $in._1.no $in._1.deaf`;
复制代码
回复 2# mcshell


   
作者: jason680    时间: 2013-09-30 10:50
回复 4# xiumu2280

I think you need to use "\\" for directory on windows ...
   
作者: xiumu2280    时间: 2013-09-30 10:55
路径是没问题的  我用的strawberry perl
把程序里的路径复制到cmd里面,单个运行是没问题的。
但是若果这样连在一起写的话,程序却不会运行···回复 5# jason680


   
作者: mcshell    时间: 2013-09-30 10:57
目测是环境变量问题
作者: xiumu2280    时间: 2013-09-30 11:09
但是我手动单个跑程序没问题啊··· 安装的是strawberry perl回复 7# mcshell


   
作者: xiumu2280    时间: 2013-09-30 11:18
像我这种用法有没有其他的实现方法啊····
作者: mcshell    时间: 2013-09-30 11:25
把strawberry perl 的完整路径加到前面 xxxxxxxxxx\bin\perl.exe   bin\10\auto_all_match_1.pl  ...
作者: xiumu2280    时间: 2013-09-30 11:31
本帖最后由 xiumu2280 于 2013-09-30 12:08 编辑

OK了····看来是压根没有运行啊··· 可是环境变量是设置过的 回复 10# mcshell


   




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2