2013-10-16 2 views
-1

하나의 디렉토리에서 정보를 수집 중입니다. 그 후에 나는 원하는 데이터 만 필터링하고 있습니다.perl - 수집 된 데이터에서 정보 수집 및 일부 정보 만 선택

sub info { 
    my @files = `ls -l $path_to_dir`;     
    chomp @files;  
} 

이 배열은 다음과 같은 모든 정보가 있습니다 : 이제 @files = ("D1", "K1", "ABC","FD_HTML")

을 나는 등 D1, K1, D0, K0, A0로 시작 $의 path_to_dir 내부 그냥 파일 이름을 원하는 여기 내 코드입니다 배열 "@ 파일"에 저장된 $ path_to_dir의 수집 된 정보에서 D0, D1, K0, A0와 같은 데이터를 필터링하는 방법을 제안 해 주실 수 있습니까? 이제 배열에서 D0, K0, K1, A0 같은 데이터를 다른 배열에 저장하려고합니다. 그렇게하는 방법?

+0

명확하지 않으므로 코드 옵션을 사용하여 코드를 다시 포맷해야합니다. – KeepCalmAndCarryOn

+2

다른 질문에 따라, 결코 받아 들여지지 않았거나 피드백을 매우 비슷한 느낌으로 받았기 때문에 ' grep'. 또한 코드가 실행되지 않습니다. 'my @files = ls -l $ path_to_dir'은 일종의 펄 의사 코드 인 것 같습니다. 실행하려고 시도한 코드를 포함하도록 질문을 편집하십시오. – mikew

+0

@KeepCalmAndCarryOn : 지금 편집 상태가 양호합니까? 고마워, – user2498830

답변

0

셸 명령 대신 Perl opendir 메서드를 사용하십시오. 이것은 더 안전하며 코드를 더 이식성있게 만듭니다.

http://perlmeme.org/faqs/file_io/directory_listing.html

는 정규 표현식과 일치하는 특정 파일을 처리하는 방법에 대한 예를 들어, "로 끝나는 파일을 찾기 ..."섹션에 특별한주의를 기울이 ... 예제는이 페이지에서보세요.