나는 Perl에 100 % 새로 소개되었지만 PHP 지식이있다. @url 변수를 가져 와서 .txt 파일로 저장하는 빠른 스크립트를 만들려고합니다. 내가 겪고있는 문제는 그것이 성가시다 루프를 통해 실행될 때마다 URL을 다시 저장한다는 것입니다. 그래서 루프가 실행되면, 다음과 같이 보일 것입니다. 나는 그것을 같이하고 싶은 무엇루프가 반복되고있는 동안
url1.com
url1.com url2.com
url1.com url2.com url3.com
은 평범하고 단순하다 :
url1.com
url2.com
url3.com
가 여기 내 코드입니다. 누구든지 도울 수 있다면, 나는 그렇게 많이 감사 할 것입니다!
#!/usr/bin/perl
use strict;
use warnings;
my $file = "data.rdf.u8";
my @urls;
open(my $fh, "<", $file) or die "Unable to open $file\n";
while (my $line = <$fh>) {
if ($line =~ m/<(?:ExternalPage about|link r:resource)="([^\"]+)"\/?>/) {
push @urls, $1;
}
open (FH, ">>my_urls.txt") or die "$!";
print FH "@urls ";
close(FH);
}
close $fh;
'die' 예외가있는'open'에서 잘 수행되지만 * OS Error * 변수를 'die' 문자열에 통합하는 것이 매우 유용합니다. 실패 이유를 설명하십시오. 또한 'die'문자열의 끝에서 개행을 생략하면 Perl은 컨텍스트 정보를 추가하여 어떤 예외적 인 소스 파일에서 – Borodin