Chinaunix

标题: perl脚本调用其他目录下的脚本时工作目录的问题! [打印本页]

作者: laolun    时间: 2015-04-06 20:28
标题: perl脚本调用其他目录下的脚本时工作目录的问题!
请教大家一个问题,假设:
在 E:\bin\目录下有一个脚本a.pl,另外有子目录 sub, 这个目录里面有个脚本b.pl,有个文件in.txt
E:\bin\
          a.pl
          sub\
                b.pl
                in.txt


其中,a.pl通过system命令调用b.pl
  1. system("start sub/b.pl");
复制代码
而b.pl脚本需要处理in.txt, 比如:
  1. open(my $in, "in.txt") or die $!;
复制代码
用a.pl调用b.pl时,b.pl会在E:\bin\目录中去寻找in.txt, 从而出错,请教这个该如何解决?谢谢先!
作者: laolun    时间: 2015-04-06 20:39
尝试过chdir来更改工作目录,貌似不奏效。愁啊
作者: laolun    时间: 2015-04-06 20:44
搞定了,就是用chdir,
作者: jason680    时间: 2015-04-06 20:46
回复 1# laolun

Keyword: $0

print $0 in b.pl
   
作者: pyartist    时间: 2015-04-10 12:18
chdir
或者绝对路径
或者将路径保存在变量中

不然会在当前工作路径下查找




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