Nếu tôi có một dòng lệnh như:Làm thế nào tôi có thể cho phép tùy chọn xác định khi phân tích cú pháp args với getopt
my_script.pl -foo -WHATEVER
Kịch bản của tôi biết về --foo
, và tôi muốn getopt để thiết lập biến $opt_foo
, nhưng tôi không biết bất cứ điều gì về -WHATEVER
. Làm thế nào tôi có thể nói với Getopt để phân tích các tùy chọn mà tôi đã nói với nó, và sau đó nhận được phần còn lại của các đối số trong một biến chuỗi hoặc một danh sách?
Một ví dụ:
use strict;
use warnings;
use Getopt::Long;
my $foo;
GetOptions('foo' => \$foo);
print 'remaining options: ', @ARGV;
Sau đó, phát hành
perl getopttest.pl -foo -WHATEVER
cho
Unknown option: whatever remaining options:
Một ha, điều đó sẽ giải thích tại sao tôi không tìm thấy nó ... :) – Ether
Tôi thấy nó hoàn toàn điên cuồng đọc về một số tùy chọn gọn gàng trên trang web perldoc và sau đó quay trở lại cài đặt Perl công ty mesoso của tôi và thấy rằng chính xác lựa chọn hoàn hảo Tôi đã tìm thấy yêu cầu một tụ điện thông, hoặc ít nhất một nâng cấp mô-đun CPAN – DVK
Bạn có chắc 'pass_through' không có sẵn với 5.8? Tôi chỉ cần kiểm tra 'perldoc Getopt :: Long' cho 5.6.1 (và bạn nghĩ bạn là tiền sử lịch sử;)) và nó ở đó. – Zaid