Есть такой фрагмент внутри перл скрипта:
@rrdfetch=qx(/usr/local/rrdtool/bin/rrdtool fetch
/opt/nmis-data/database/interface/router/ca-ple-dc2-ar-02/ca-ple-dc2-ar-02-fastethernet0-0.rrd
AVERAGE -s -30000 -e -300);
Вопрос: можно ли передавать этому скрипту, следующие hardcoded значения:
/usr/local/rrdtool/bin/rrdtool
и
/opt/nmis-data/database/interface/router/ca-ple-dc2-ar-02/ca-ple-dc2-ar-02-fastethernet0-0.rrd
в виде переменных, скажем $rrdtool_home и $fast_enet_home
и потом запускать юниксовский скрипт используя эти переменные, а не абсолютные значения.
Как это сделать. Подстановкой в лоб не получается
Вопрос по perl
-
- Уже с Приветом
- Posts: 5669
- Joined: 13 Oct 2000 09:01
- Location: East Bay, CA
-
- Уже с Приветом
- Posts: 10367
- Joined: 12 Apr 2001 09:01
- Location: Lithuania/UK
Re: Вопрос по perl
Sabina wrote:Есть такой фрагмент внутри перл скрипта:
@rrdfetch=qx(/usr/local/rrdtool/bin/rrdtool fetch
/opt/nmis-data/database/interface/router/ca-ple-dc2-ar-02/ca-ple-dc2-ar-02-fastethernet0-0.rrd
AVERAGE -s -30000 -e -300);
Вопрос: можно ли передавать этому скрипту, следующие hardcoded значения:
/usr/local/rrdtool/bin/rrdtool
и
/opt/nmis-data/database/interface/router/ca-ple-dc2-ar-02/ca-ple-dc2-ar-02-fastethernet0-0.rrd
в виде переменных, скажем $rrdtool_home и $fast_enet_home
и потом запускать юниксовский скрипт используя эти переменные, а не абсолютные значения.
Как это сделать. Подстановкой в лоб не получается
Должно работать. Вот такой, например, скрипт работает:
#!/usr/bin/perl
$command = "/bin/ls";
$keys = "-l";
$file = "test.pl";
$out = qx/$command $keys $file/;
print $out . "\n";
Дальше, все будет только хуже. Оптимист.
-
- Уже с Приветом
- Posts: 5669
- Joined: 13 Oct 2000 09:01
- Location: East Bay, CA
Re: Вопрос по perl
f_evgeny wrote:Sabina wrote:...Подстановкой в лоб не получается
Должно работать. Вот такой, например, скрипт работает:
#!/usr/bin/perl
....
Ой, ну конечно же работает. Я делала глупую ошибку.
Большое спасибо за оперативный ответ
Сабина