홈>
이 CSV 파일이 있습니다
4,1,0,1,1,1,0,0,0
5,1,0,1,2,1,0,0,0
6,1,0,1,3,1,0,0,0
7,1,0,1,4,1,0,0,0
8,1,0,2,3,2,0,0,0
9,1,0,2,4,2,0,0,0
10,1,0,2,5,2,0,0,0
11,1,0,2,6,2,0,0,0
12,1,1,3,3,3,0,0,1
13,1,1,3,4,3,0,0,1
14,1,1,3,5,3,0,0,1
15,1,1,3,6,3,0,0,1
16,1,1,3,7,3,0,0,1
17,1,1,4,6,4,0,0,1
18,1,1,4,7,4,0,0,1
19,1,1,4,8,4,0,0,1
20,1,1,5,7,5,0,0,1
8로 시작하는 줄에 grep하고 싶습니다 나는 노력하고있다
grep 8 example.csv
그러면 나는 다음과 같이된다
8,1,0,2,3,2,0,0,0
18,1,1,4,7,4,0,0,1
19,1,1,4,8,4,0,0,1
8로 시작하는 줄을 원합니다. 어떻게해야합니까?
- 답변 # 1
- 답변 # 2
perl
로 태그를 지정 했으므로 펄 솔루션을 찾고 있다고 가정합니다. 가장 간단하지만 가장 강력한 방법은 다음과 같습니다.$ perl -ne 'print if /^8,/' example.csv 8,1,0,2,3,2,0,0,0
grep
와 동일합니다. 해결책.-F
를 사용하는 것도 가능합니다 명령 줄 옵션을 사용하여 쉼표로 줄을 나누십시오. 인용 된 필드, 이스케이프 된 구분 기호 등의 경우는 처리되지 않습니다.$ perl -F, -nle 'print if $F[0]==8' example.csv 8,1,0,2,3,2,0,0,0
CSV 파일을 많이 사용하는 경우
Text::CSV
를 사용하는 것이 좋습니다. (또한Text::CSV_XS
설치 속도로)use warnings; use strict; use Text::CSV; my $csv = Text::CSV->new({ binary=>1, auto_diag=>2, eol=>$/ }); while ( my $row = $csv->getline(*ARGV) ) { $csv->print(select, $row) if $row->[0] == 8; } $csv->eof or $csv->error_diag;
그런 다음 이렇게 실행하십시오 :
$ perl csv.pl example.csv 8,1,0,2,3,2,0,0,0
입력 줄을 다시 포맷 할 수 있다는 유일한 경고는 있지만 (물론 여전히 올바른 CSV 임)
관련 자료
- javascript - HTML 캔버스의 경우 텍스트와 함께 clip ()을 경로로 사용하는 방법은 무엇입니까?
- wordpress - 번호로 정렬하는 방법
- python - SVM One-Versus-All에 대한 하이퍼 플레인을 그리는 방법은 무엇입니까?
- nlp - 파이썬에서 for 루프에서 단어를 수정하는 방법
- javascript - for 루프를 사용하여 사용자가 삽입 한 숫자를 합하는 방법은 무엇입니까?
- javascript - ajax가 완료되기를 기다리는 방법
- python - for 루프를 while 루프로 변경하는 방법
- xamarin - C #에서 ContentPage에 대해 ShellNavBarIsVisible = "false"를 어떻게 설정할 수 있습니까?
- python - 목록의 모든 항목에 대해 문자열의 일부를 이동하는 방법
- Flutter for 루프로 목록을 표시하는 방법
- android - OptionsMenu 열기 버튼 설정 방법
- javascript - 목록을 특정 수의 데이터에 매핑하는 방법
- r - 동일한 ID를 가진 모든 관측 값을 변경하는 방법은 무엇입니까?
- 텍스트 글꼴을 설정하고 VBA를 사용하여 Word의 방정식에 글꼴을 유지하려면 어떻게합니까?
- c++ - hdf5에서 단일 기능에 대한 테스트를 실행하는 방법
- python - 이미지에 pyautogui를 사용하는 방법
- keras - 텍스트 분류에 GPT 3를 어떻게 사용할 수 있습니까?
- cypress - 요소가 표시 될 때까지 기다리는 방법
- bash - grep은 DOS 줄 끝을 어떻게 처리합니까?
- hiveql - 조인에서 Hive가 사용하는 MapReduce 작업 수는 몇 개입니까?
grep ^8, example.txt
Where ^는 줄의 시작 부분에서 일치하는 패턴을 시작해야 함을 나타냅니다. 또한 정규 표현식에 ","를 추가하여 80으로 시작하는 줄과 일치하지 않습니다.