请问为什么带了参数,还说参数不够。

请问为什么带了参数,还说参数不够。

C:\stat>cdiff.pl -unlimited -noprolog -blank_ignore -pred D:\myclearcasevi
ews\myview\nnn\code\dbscript_V3\ag.sql@@\main\15
cdiff.pl: Too few arguments given.
cdiff.pl: Invoke as "cdiff.pl -help" for complete usage documentation

为什么会报这个错了,不是有
-unlimited -noprolog -blank_ignore -pred D:\myclearcasevi
ews\myview\nnn\code\dbscript_V3\ag.sql@@\main\15

这么多参数吗,一共有四个参数啊。@ARGV(程序中的参数个数)应该不为0,应该为4,为什么 还会有这个提示?

main函数如下所示:


sub main {
   local @ARGV = @_;
   local $_;

      ## Parse options and check for help
   my $rc = &GetOptions( \%OPTS,
         "help", "version", "debug",
         "output=s",
         "after=i", "before=i", "unlimited",
         "blank_ignore", "predecessor",
         "fmt=s@",
         "linenumbers|lines|numbers",
         "reflinenumbers|reflines|refnumbers",
         "nocontext|ncontext",
         "noheaders|nheaders",
         "noprologue|nprologue",
         "tabstop=i"
   );
   &VersionMsg(1) if ($OPTS{'version'});
   &Usage(1) if ($OPTS{'help'});

   ## Force the -pred option if only one XNAME argument is supplied
   if (@ARGV == 1) {
      $OPTS{'predecessor'} = 1;
   }
   ## Check for errors
   if (@ARGV == 0) {
      &ErrorMsg("Too few arguments given.");
      $rc = 0;
   }
   &Usage(2) if (! $rc);

  .......
C:\stat>perl cdiff.pl -unlimited -noprolog -blank_ignore -pred D:\myclearcasevi
谢谢guanmj ,试了一下,果然是这样的,但是为什么会这样呢?
perl cdiff.pl -unlimited -noprolog -blank_ignore -pred D:\myclearcasevi
和cdiff.pl -unlimited -noprolog -blank_ignore -pred D:\myclearcasevi
难道不同吗?(我已经设置了pl后缀和perl.exe直接关联的啊)


QUOTE:
原帖由 yuonunix 于 2008-4-7 15:08 发表
谢谢guanmj ,试了一下,果然是这样的,但是为什么会这样呢?
perl cdiff.pl -unlimited -noprolog -blank_ignore -pred D:\myclearcasevi
和cdiff.pl -unlimited -noprolog -blank_ignore -pred D:\myclearc ...

关联适用于鼠标操作


QUOTE:
原帖由 churchmice 于 2008-4-7 18:31 发表

关联适用于鼠标操作

不是这个原因,应该是关联得不对。
正确的关联是这样的:

[Copy to clipboard] [ - ]
CODE:
"C:\Perl\bin\perl.exe" "%1" %*