$\ = "\n";
sub foo
{
print("one");
}
foo(); // mark1
sub foo
{
print("two");
}
foo(); //mark2
Run Code Online (Sandbox Code Playgroud)
执行上面的代码时,输出将是:两个,两个.据我所知Perl是一个解释器,所以当调用foo(mark1)时,不应该首先打印,而当调用foo()(mark2)时必须打印两个.但是为什么两个时间都打印两个,请解释一下怎么样?
需要帮助来提取下面的日期和时间戳列表中的日期开始和结束,
假设我从日志文件中提取了以下时间戳数据,并且只需要提取每个日期和时间的开始和结束。输出将用于计算开始到结束之间的时间差。
数据
2021年10月11日 16:27:39
2021年10月11日 16:28:10
2021年10月11日 16:30:47
2021年10月11日 16:30:47
2021年10月12日 09:27: 03
2021年10月12日 10:27:03
2021年10月12日 18:22:15
2021年10月13日 08:57:16
2021年10月13日 08:57:37
2021年10月13日 11:33: 25
2021 年 10 月 13 日 11:33:25
2021 年 11 月 8 日 16:45:17
2021 年 11 月 8 日 16:49:10
2021 年 11 月 8 日 17:00:50
2021 年 11 月 8 日 22:10: 24
2021 年 11 月 9 日 11:51:35
2021 年 11 月 09 日 11:52:40 2021 年 11
月
9 …
我有一个变量$code = \'print "Hello World";'.
当我尝试使用perl在CSV文件中写入此值时,我会SCALAR(0x6ac7890)在CSV中的CODE列下看到类似的内容.我期待着print "Hello World";这一专栏.有人可以澄清这里出了什么问题吗?
我正在创建一个.cgi文件,它以表格格式打印网页上数据库表中的所有值.问题是,当我在putty终端模拟器上运行该文件时,它运行正常,但当我尝试在浏览器上运行该文件时,我得到了即使T在服务器上键入文件的正确位置,也会显示错误消息"找不到文件".
我无法理解我做错了什么?我使用putty将我的文件权限设置为chmod 755*,但它仍然无法正常工作.这是一个文件权限或表结构的问题是否在浏览器上运行是错误的?
请帮忙...
people.CGI文件
#!/usr/bin/perl
use CGI;
use DBI;
use strict;
#use warnings;
#use diagnostics;
print "Content-type:text/html\r\n\r\n";
#$q = CGI->new;
#print $q->header;
my $dsn = "DBI:mysql:Demo:localhost"; # Data source name
my $username = "mint"; # User name
my $password = "MINT123"; # Password
my $dbh;
my $sth; # Database and statement handles
$dbh = DBI->connect($dsn, $username, $password);
$sth = $dbh->prepare("SELECT * from people");
$sth->execute();
print "<h1>ganesh</h1>";
print "<table >
<tr>
<th>ID</th>
<th>Name of People Involved</th>
<th>Position</th>
<th>Roles(A user can …Run Code Online (Sandbox Code Playgroud) 我想寻求帮助来创建一个 Perl 代码,我可以在其中创建字母数字顺序变量(可以用作数组、散列或任何其他类型的变量)。
for ( my $x = 1; $x <= 10; $x++ ){
my $var$x = "" *# to create empty variable with the word 'var' + the integer from x (var1, var2, var3, ...)*
for ( my $y = 1; $y < 10; $y++){
my $var$x = $var$x.''.$x.''.$y *# to store/concatenate the values from $x+$y into var$x*
}
print "$var$x"
}
Run Code Online (Sandbox Code Playgroud)
应该打印什么:
var1 = 11, 12, 13, 14, 15, 16, 17, 18, 19
var2 = 21, 22, 23, …Run Code Online (Sandbox Code Playgroud) 我想比较两个字符串,如果匹配则打印"是".当我打印字符串值相同时.但脚本打印"否"匹配.
Perl脚本:
foreach my $lines(@mylogFileLines)
{
if ($lines =~ m/^*.ERROR/i)
{
my @errorline = split ('/',$lines);
my @getline = split (' ',$errorline[4]);
my @vresp_id = $resp_id;
@mygetline = $getline[0];
foreach my $resp (@vresp_id)
{
print "$resp --- $getline[0]\n";
if ($resp =~ $getline[0])
{
$remarks = "Error";
print "yesss-\n";
}
else
{
print "no\n";
$remarks = "-";
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
命令行输出:
dom_RESP_2018-03-02T14-26-29-029+10-00.xml --- dom_RESP_2018-03-02T14-26-29-029+10-00.xml
no
testing_RESP_2018-03-02T14-26-29-029+10-00.xml --- dom_RESP_2018-03-02T14-26-29-
029+10-00.xml
Run Code Online (Sandbox Code Playgroud)