파일의 모든 줄 시작 부분에서 문자열을 찾아 다른 파일에 저장

파일의 모든 줄 시작 부분에서 문자열을 찾아 다른 파일에 저장

나는 이 작업에 대해 운이 좋지 않은 몇 가지 옵션을 시도했습니다. 이 작업을 배치 파일로 수행하고 싶지만 원하는 결과를 얻지 못했습니다.

나는 다양한 명령을 많이 시도했지만 findstr모든 것을 하나의 큰 줄에 작성하고 문자가 때때로 이상하게 보이게 만드는 것 같습니다.

나의 실패한 시도 중 하나

findstr /i /n "\<JH*\>" c:\Users\Desktop\split\file.txt > JH.tx

.csv하나의 파일 에서 "로 시작하는 모든 항목을 찾아야 합니다 .JH"를 선택하고 해당 항목만 새 .csv파일에 저장합니다.

검색할 샘플 CSV 파일

JH009,20,John May.pdf
PB184,90,Chicken.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf 
PB091,10,Mice.pdf
PB884,1040,Cat Order.pdf

새로운 출력 CSV 파일의 예상 결과

JH009,20,John May.pdf 
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf

답변1

당신은 사용할 수 있습니다Findstr명령을 /B스위치와 함께 사용하여 검색 중인 파일의 줄 시작 부분에 있는 패턴과 일치하도록 지시합니다. 패턴이 대소문자를 구분하지 않으려면 /I스위치를 사용하거나 문자열의 대소문자 패턴 일치를 위해 명령에서 스위치를 생략하세요.

통사론

FindStr /I /B "JH" "c:\Users\Desktop\split\file.txt" > "JH.csv"

검색된 파일

JH009,20,John May.pdf
PB184,90,Chicken.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf
PB091,10,Mice.pdf
PB884,1040,Cat Order.pdf

FindStr 명령 출력

JH009,20,John May.pdf
JH024,10,Fred Walmsley.pdf
JH080,12,Now Call.pdf

추가 리소스

  • Findstr

  • FindStr /?

    /B         Matches pattern if at the beginning of a line.   
    /I         Specifies that the search is not to be case-sensitive.
    

    Example: FindStr /I /B "<String>" "<FileToSearch>" > "<OutputFile>" 
    
  • 리디렉션

관련 정보