Использование perl __DATA__, передавая его значение в varialbe - PullRequest
0 голосов
/ 21 июня 2019

Я пытаюсь использовать файловый дескриптор DATA в сценарии, назначить значения переменной, а при печати он просто печатает и пустую строку.

#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper qw(Dumper);  
my $str = <DATA> ;
print "$str\n" ;

__DATA__
ab cd ef gh ij

1 Ответ

2 голосов
/ 21 июня 2019

Если у вас есть более одной строки в __DATA__, вы можете использовать «slurp» (прочитать все содержимое <DATA> в переменную):

my $str = do { local $/ = undef; <DATA> };
print "$str\n";
__DATA__
ab cd
ef gh
i
j
...