-1
나는 powershell에 인수를 전달하고 Perl로 데이터를 반환하는 Perl 스크립트를 가지고있다. 그 값은 저장되어 있지만 그 값을 변수에 할당하고 싶습니다. 그렇게하는 방법을 모르겠습니다.Perl에서 출력을 변수에 저장하는 방법
sub getvalue{
print "Getting value...\n";
my $renamecmd = 'Powershell.exe -executionpolicy remotesigned -File C:\Workspace\Utilities\pathtofile.ps1'." $val";
my @output = `$renamecmd`;
foreach (@output) {
return $_;
}
}
$newvar = $_;
위의 내용은 작동하지 않습니다.
나는이 질문을 이해하지 못한다. 그 루프에서'@ output'의 첫 번째 요소를 리턴합니다. 즉, 루프가 반환 되었기 때문에 루프 처리가 중지됨을 의미합니다. '@ output'은 sub에 어휘 적이기 때문에, 그것은 사라진다. 그러나 당신의 코드가'getvalue' 서브를 호출하지 않기 때문에, 결코 중요하지 않습니다. 어쨌든 결코 실행되지 않기 때문입니다. '$ newvar = $ _'의 할당은'$ newvar' (무서운 변수 이름 인 btw)에 무엇인가를 할당합니다. ** 실제 ** 코드를 보여주십시오. – simbabque
이것은 실제 코드이지만 일부 항목의 이름을 변경했습니다. –