【发布时间】:2015-09-12 01:06:04
【问题描述】:
我是 Perl 新手,我正在使用 Windows 机器
我正在使用 PHP 和 Perl。我的完整 Web 应用程序是用 PHP 编写的。我每 20 分钟编写一个用于 DB 交互的 Perl 脚本。我的 Perl 脚本是这样的。
use strict;
use warnings;
sub Process1()
{
use DBI;
use Date::Format;
my $DBH=DBI->connect("DBI:mysql:dbname:localhost","root","");
my $sth=$DBH->prepare("UPDATE tablename SET column1='blah'"); #update query
$sth->execute();
while (my @row=$sth->fetchrow_array)
{
print $row[0] . "\n";
}
}
while(1) {
&Process1();
sleep 900;
}
如果我必须运行我的 perl 脚本,我只需打开 Perl Commad 行并执行命令
perl C:xampp\htdocs\samplescript.pl
我的问题是 -
- 如何在我的 Linux 服务器上运行相同的 Perl 脚本。
- 如何执行命令?
- 如果我在 windows 中关闭 perl 命令行,脚本将停止。
如何在 linux 服务器中停止相同的脚本?
【问题讨论】:
-
所有这些都很容易搜索。您是否尝试过并遇到问题?
-
不要在你的 Perl 子例程中使用原型——
sub Process1()应该只是sub process1;不要使用 & 号调用 Perl 子例程 --&Process1()应该是process1();并且不要在词法变量名中使用大写字母——$DBH应该是$dbh -
如果你没听说过,那叫
crontab。 -
Windows 机器 -- 使用任务计划程序(crontab 将用于 unix/linux)。