这就是我想要做的:
在我制作/开发的每个脚本中,我总是调用perl库和子例程,如:
#! /directory/bin/perl
system('source /directory/.cshrc&');
use Net::Domain qw(hostname hostfqdn hostdomain);
use Time::Local;
use Time::Piece;
use Switch;
use Exporter;
#use strict;
use Data::Dumper qw(Dumper);
use Time::Local;
use Time::Piece;
use Time::Seconds();
use Tk;
use Tk::BrowseEntry;
use Tk::Balloon;
use Tk::widgets qw(Checkbutton BrowseEntry);
use Tk::NoteBook;
use Tk::Pane;
use DBI;
use DBD::Oracle;
$ORACLE_HOME = "/lolDirectory/10.2.0/elinux";
$ENV{ORACLE_HOME}=$ORACLE_HOME;
###############
# SUBROUTINES #
###############
&ownerChecker;
&processChecker;
Run Code Online (Sandbox Code Playgroud)
我希望我可以把所有这些文件放到一个文件中并加载到perl脚本,同时运行它就像它是perl脚本本身的一部分一样:
#! /directory/bin/perl
# load the content of the file and run it as a part of the script
Run Code Online (Sandbox Code Playgroud)
这可能吗?如果有可能?如果可能,从调用libs到调用checker脚本可能是非常通用和标准的.
我正在开发一个模块,该模块将在特定条件下调用Perl模块.
而逻辑将是这样的:
$var = "db_tk";
if ( $var =~ /db/ ) {
use dbi;
}
if ( $var =~ /tk/ ) {
use tk;
}
Run Code Online (Sandbox Code Playgroud)
我无法在运行时使用它们运行它们require.
有没有办法安排Oracle运行查询并将数据保存到表中?
或者我是否可以安排执行Oracle查询以便一次运行并将数据保存到表中?
我有一个自动报告页面,由于在很长一段时间内执行繁重的逻辑(包括2年的数据+逻辑计算)而出现性能问题.如果客户点击报告页面,他们会抱怨加载时间过长; 通过这种转储数据到当前时间表可以解决我的问题.
有类似的问题,但我所追求的是文件存在的实时检测.
我有2个linux盒子/ PC.
[Linux Box 1] - >生成一个名为host的文件(手动执行)
[Linux Box 2] - >有一个守护进程,每2秒休眠一次,检查预期的文件是否存在.如果它存在,它将执行我的ssh命令(当然会显示一个文本显示它被执行了bla bla bla).
PERL SCRIPT:
ctr:
if (-e $file) { system ("ssh $script $host.$display"); }
sleep(2);
goto ctr;
Run Code Online (Sandbox Code Playgroud)
问题 问题是,我似乎无法确定文件是否实时存在,即使它已经存在.
方框1
[machine01:/home/machine01]% /MACHINE/TOOLS/perl/app/host_gen
> executed at 08/21/2015 21:40:32
Run Code Online (Sandbox Code Playgroud)
方框2
Sleeping for 2 seconds [08/21/2015 21:40:22]
Sleeping for 2 seconds [08/21/2015 21:40:24]
Sleeping for 2 seconds [08/21/2015 21:40:26]
Sleeping for 2 seconds [08/21/2015 21:40:28]
Sleeping for 2 seconds [08/21/2015 21:40:30]
Sleeping for 2 seconds [08/21/2015 21:40:32] **<-expected …Run Code Online (Sandbox Code Playgroud)