프로그램을 실행하고 출력을 파일로 파이프하고 싶습니다. 프로그램은 몇 시간 동안 실행될 수 있으므로 프로그램이 실행되는 동안 발생하는 모든 데이터를 기록하고 싶습니다. 어떻게할까요?
그래서 펄에서는 지금까지 이것을했습니다. 예를 들어, 내 프로그램으로 ifconfig를 사용하고 있습니다. 그래서이 경우에는 ifconfig를 파일로 출력하고 싶습니다. 그러나 아래 코드는 STDOUT으로 출력됩니다. 출력을 텍스트 파일로 리디렉션하려면 어떻게합니까?
my $program1 = "/sbin/ifconfig";
open my $print_to_file, "|-", $program1, @args;
print $print_to_file;
close($print_to_file);
귀하의 예에서는 $print_to_file
입력 핸들입니다 (외부 프로그램의 출력 스트림이지만 Perl 스크립트는 여기에서 읽습니다). 따라서 그 내용을 읽고 출력 파일 핸들을 통해 파일에 내용을 씁니다.
open my $read_from_cmd, "|-", $program1, @args; # an input handle
open my $print_to_file, '>', $the_file; # an output handle
print $print_to_file <$read_from_cmd>;
close $read_from_cmd;
close $print_to_file;
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다