0

我有一个目录文件,其中包含定义文件测试文件和指令文件的所有路径。定义文件看起来像

##Definition file

Def 1 : "definition 1"

Def 2 : "definition 2"

Def 3 : "definition 3"

每个指令文件包含指令集,如

##Instruction File 1
{

Instruction 1

run Def1

sleep

run def2

}
{

Instruction 2

run Def 3

sleep

run Def1

}

同样具有多个指令集的多个指令文件

Test File looks like
{

run Instruction file1 Instruction 2

sleep 5

}

谁能指导我如何做到这一点。就像如何从指令文件中运行特定指令

我可以使用多维数组来做到这一点,比如将命令、指令文件和指令存储在多维数组中吗?

4

1 回答 1

0

您可以使用哈希引用和数组引用。

散列可以键入目标,然后数组引用可以存储指令数组。

$ref->{'key'} = \@array

打开文件以读取“<”

open FILE, "<", "filename.txt" or die $!

要获取所有行:

my @lines = <FILE>

从这里开始,根据您的说明拆分代码,也许使用正则表达式。

foreach my $line (@lines) {
    #do stuff here for the instructions
    #maybe a regex
}

然后遍历并处理每一个..

对于您的测试文件问题,您可以关联地存储它。

所以你会有一组测试文件“命令组”

每个元素可以存储 3 个关联值的散列

$test[0] = { command => $command , filename => $filename, instruction => $instruction };

从这里您可以访问以下元素:

$test[0]->{command}

于 2013-06-25T12:16:16.947 回答