2014-02-20 2 views
-2

특정 우편 번호가 포함 된 레코드 만 추출하고 DOS에서는 그렇게하는 매우 큰 텍스트 파일이 있습니다.도스를 사용하여 특정 레코드 추출

많은 예제가 있지만 필요한 것은 무엇이든합니다.

도움을 주시면 감사하겠습니다.

+0

같은 당신이 실제 DOS (즉, 1990 년대 초에서)을 의미합니까하거나 Windows 명령 줄을 의미합니까 될 것인가? – Boann

+1

여기에 질문을 게시 해 주셔서 감사합니다. 언뜻보기에는 주제에 관한 질문이있는 것처럼 보입니다. 그러나 누군가가 당신에게 도움이되는 대답을주기 전에 좀 더 세부 사항을 추가해야 할 것입니다. 첫째로 DOS라는 용어에 대한 혼란을 해결하십시오. 두 번째로 파싱을 시도하는 파일 형식의 예제를 제공 할 수 있습니다 (몇 줄 만 표시). 결과가 필요한 형식을 세 번째로 보여줍니다. –

+0

"많은 예제가 있지만 아무 것도 볼 수 없습니다. 그것은 내가 필요한 것을 구체적으로합니다. " 다시 돌아 오지 않고 특별히 필요한 것을 설명하지 않으면 필요한 것을 구체적으로 보여주는 예제를 얻지 못할 것입니다. – Boann

답변

0

FINDSTR을 사용해보십시오.

당신은 입력 할 수 있습니다

FINDSTR /? 

명령에 대한 도움말을 얻을 당신이 우리에게 당신의 데이터를 표시하지 않을 경우. 여기

도움이 될 몇 가지 예입니다 :

첫째, 나는 당신에게 "file.txt를"나는 "MA01824"와 같은 간단한 우편 번호를 검색 이제

E:\>TYPE file.txt 
Line 1,MA01824 
Line 2,NY10017 
Tricky line,SomethingNY10017Something 

라는 내 파일을 표시하고 그것을 작동

이제
E:\>FINDSTR "MA01824" file.txt 
Line 1,MA01824 

내가 다른 문자열 내에서 두 번, 한 번 제대로 한 번 임베디드 발생하는 우편 번호를 검색

,
E:\>FINDSTR "NY10017" file.txt 
Line 2,NY10017 
Tricky line,SomethingNY10017Something 

해당하지 않습니다. "단지 단어의 시작 부분에서 찾을 수 있습니다"를 의미하는 정규 표현식을 추가 사용자들이 파일의 대문자 때 소문자 우편 번호를 검색하는 경우에 대해 어떻게

E:\>FINDSTR /r "\<NY10017" file.txt 
Line 2,NY10017 

- 아무 문제, 그냥 검색은 대소 문자를 구별로 만들 당신이 위의 새 파일에 어떤 명령의 출력을 저장하는 대신 화면에 표시하려면 "/ 나는"

E:\>FINDSTR /i "ma01824" file.txt 
Line 1,MA01824 

, 단지 추가의 끝에서 (>)와 파일 이름보다 더 다음과 같은 명령 :

FINDSTR "MA01824" > MassZIPcode.txt 

출력 파일에 동일한 이름을 지정하여 입력 파일을 덮어 쓰지 않도록주의하십시오 !!!

0
C:\>FIND /? 

Searches for a text string in a file or files. 

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] "string" [[drive:][path]filename[ ...]] 

    /V   Displays all lines NOT containing the specified string. 
    /C   Displays only the count of lines containing the string. 
    /N   Displays line numbers with the displayed lines. 
    /I   Ignores the case of characters when searching for the string. 
    /OFF[LINE] Do not skip files with offline attribute set. 
    "string" Specifies the text string to find. 
    [drive:][path]filename 
      Specifies a file or files to search. 

그래서 FIND "010010" mydata.txt

관련 문제