2

我正在制作一个与 GNU-FTP 通信的客户端脚本。我希望能够在命令行上向它发送一个自定义参数,所以我创建了一个参数--ftp-args

这就是它的样子

GetOptions(
  .. redacted stuff..
  "ftp-args=s%" => \$FTP_ARGS
) or die("Error in command line arguments\n");

但是,每当我尝试调用它时,都会出现错误,

$ ./script/dm-ftp360 --ftp-args="-E"
Option ftp-args, key "-E", requires a value
Error in command line arguments

是否有可能解决这个问题,并使这成为可能?

4

1 回答 1

2

您已指定s%- 定义一个指定哈希条目的选项。这意味着key=value选项的每个参数都有一个形式。但是您只指定了-E. 错误消息是关于缺少的=value部分,而不是前导-.

也许使用s@来摄取一组简单的选项?"-E="或者,如果您需要在将键和值传递给 ftp 之前将它们分开,请给出一个空值。

于 2013-06-13T22:34:59.797 回答