#!usr/bin/perl
use strict;
use warnings;
my $file_name = "rem.txt";
open(FILE, $file_name);
while (<FILE>) {
my $line = $_;
if ($line =~ m/(\w*Svr)\b/) {
my $server_name;
$server_name = $1;
my @arr_servername = $server_name;
print "@arr_servername\n";
#print "$server_name\n";
} elsif ($line =~ m/-[dD]\s*\$\{(.*?)_NAME/) {
my $database_name;
$database_name = $1;
my @arr_dbname = $database_name;
print "\n-----------------\n";
print "@arr_dbname\n";
print "\n----------------\n";
#print "....$database_name\n";
}
}
REM.TXT
ewrerfSvr //(extracted---
Rate=rpm
ID=123
RATE=45
ADDR=retriveBal
Grocer="-r -e ${MAIN_ROOT}/logs/stderr -o ${MAIN_ROOT}/logs/stdout -A --"
freedonSvr
BALFSvr //to be extracted
Rate=rpm1
ID=12323
RATE=45etf
ADDR=retriveBal
Grocer="-r -e ${MAIN_ROOT}/logs/stderr -o ${MAIN_ROOT}/logs/stdout -A --"
freedonSvr -D ${REV_AccountBalance_NAME}"// extracted
Refer
Rate =rpm
ID =234
ADDR = calbal
Grocer="-r -e ${MAIN_ROOT}/logs/stderr -o ${MAIN_ROOT}/logs/stdout -A --" -D ${REV_MAx_NAME}"
REstSvr
Grocer="-r -e ${MAIN_ROOT}/logs/stderr -o ${MAIN_ROOT}/logs/stdout -A --"
freedonSvr -D ${REV_MinBalance_NAME}"
Приведенный выше код извлекает имя файла и имя базы данных.Я хочу, чтобы имя базы данных было сопоставлено с именем сервера.Как мне это сделать?
Мой вывод извлекает все имена баз данных отдельно в некотором порядке и имя сервера в другом порядке.Я хочу использовать хеш для хранения имени базы данных и имени сервера, порядок должен быть сохранен.Как мне это сделать?
Основная задача для этого - определить, какой сервер использует какую базу данных.