내 스크립트 보고서는 왜 '문자열'에 '비 초기 값을 사용하지 않습니까?

StackOverflow https://stackoverflow.com/questions/303841

  •  08-07-2019
  •  | 
  •  

문제

이 경고를 받고 있습니다.

Use of uninitialized value in eval \"string\" at myscript.pl line 57.

이 코드를 실행할 때 :

eval;
{
        `$client -f $confFile -i $inputFile -o $outputFile`;
};

if( $@ )
{
        # error handling here ...
}

오류의 원인은 무엇입니까?

근본 원인을 어떻게 고칠 수 있습니까? (또는 그렇지 않으면 경고를 억제합니까?)

도움이 되었습니까?

해결책

후에 세미콜론이 있습니다 eval.

다른 팁

여기서 평가는 어쨌든 절대 아무것도하지 않을 것입니다. 백틱은 오류를 던지지 않습니다. 그렇지 않습니다 $@ 하지만 $? 당신이 확인하고 싶다는 것.

또한 결과를 버리는 경우 사용하는 것이 더 깨끗한 아이디어 일 수 있습니다. 체계. 예를 들어

system($client, '-f', $confFile, '-i', $inputFile, '-o', $outputFile) and do {
    #error handling here...
};
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top