【发布时间】:2018-07-24 21:38:15
【问题描述】:
我有一个包含以下详细信息的文件;
文件名:allappsclus
cont:i-02dd208bf1d81c254
rs:i-0098ad0b59b7fe7cf
我想在关联的cont 名称中使用i-XXX"= 的值并将其分配给另一个变量。
如果运行我的代码并得到输出,它是
test-1.1.0.0
1insideif-CNS
use strict;
use warnings;
use Data::Dumper;
my $jupyter = 0;
my $controller = 0;
my $rstudio = 0;
my $zeppelin = 0;
my $fh= '/tmp/allappsclus';
open my $fh2, '<', $fh or die "Cannot open file: $!\n";
while ( <$fh2> ) {
if ( $_ =~ /jup/ ) {
$jupyter = 1;
}
elsif ( $_ =~ /con/ ) {
$controller = 1;
}
elsif ( $_ =~ /rs/ ) {
$rstudio = 1;
}
elsif ( $_ =~ /zep/ ) {
$zeppelin = 1;
}
}
print "test-$rs.$con.$jup.$zep\n";
if ( $zepeq '0' && $jup eq '0' && $con eq '1' && $rs eq '1' ) {
print "insideif-CNS";
}
else {
print "do nothing";
}
close $fh;
close $fh2;
现在我想在输出中打印值 i-02dd208bf1d81c254 而不是 CNS。
【问题讨论】:
-
这个问题缺少很多细节,比如你所说的 i-XXX 是什么意思,cont 等。请提供更多信息,添加关于你尝试过但没有奏效的细节。跨度>
-
通过编写代码。
-
我有文件并试图在关联的“cont”变量中获取“:”之后的值。
-
副手 我能想到大约 10 种使用 perl 的方法。我还可以告诉你一个事实,在 google 上进行一次搜索就会显示出满是关于如何执行此操作的结果的页面。
标签: perl