Tôi đang viết một tập lệnh Perl có thể chạy cả từ dòng lệnh và từ trang web. Kịch bản lệnh nhận một vài tham số và nó đọc các tham số đó thông qua $ ARGV nếu nó bắt đầu từ dòng lệnh và từ CGI nếu nó bắt đầu từ một trang web. Làm thế nào tôi có thể làm điều đó?Sử dụng cả ARGV và CGI trong tập lệnh Perl
my $username;
my $cgi = new CGI;
#IF CGI
$username = $cgi->param('username');
#IF COMMAND LINE
$username = $ARGV[0];
Biến tiêu chuẩn tuân thủ để kiểm tra chống lại được gọi là 'GATEWAY_INTERFACE': http://stackoverflow.com/questions/1914966/how-can-i-determine -if-a-script-được gọi là-từ-the-command-line-hoặc-as-a-cgi-scr http://stackoverflow.com/questions/3086655/in-perl-how-to-distiniguish- giữa-cli-cgi-mode http://stackoverflow.com/questions/4853948/how-can-i-tell-if-a-perl-script-is-executing-in-cgi-context – daxim