명령 줄을 더 잘 배우려고 노력하고 있으며이 두 명령의 차이점이 무엇인지 궁금합니다.
grep -c ^b example
및
grep ^b example| cat –n
댓글
- Unix 및 Linux . 명령 줄을 배우고 싶다면 다른 입력 파일을 사용하여 직접 명령을 실행하여 실험하는 것이 가장 좋습니다. 질문은 조사 노력을 보여줘야합니다. div id = “50f7e05252″>
다른 옵션의 목적을 알아 보려면 관련 매뉴얼 페이지를 확인하는 것이 좋습니다. 매뉴얼 페이지는 ' ' div id = “50f7e05252″>
Unix를 처음 사용하므로 이해하는 데 문제가있는 경우이 질문을 수정 하여 더 많이 만들 수 있습니다. 구체적이고 유용합니다. 질문 방법 을 참조하고 둘러보기 를 자유롭게 이용하세요.
답변
음 , 설명서 에 따르면, grep
:
각 파일 에서 PATTERN 을 검색합니다. 기본적으로
grep
는 일치하는 줄을 인쇄합니다.
및 -c
플래그 :
-c, --count
정상 출력 억제; 대신 각 입력 파일에 대해 일치하는 줄 수를 인쇄합니다.
따라서 grep -c ^b example
는 grep ^b example
는 라인 자체를 인쇄하는 반면, 패턴과 일치하는 라인 수 (개수).
cat
, 설명
파일을 연결하고 표준 출력
및 -n
플래그의 기능은 다음과 같습니다.
-n, --number
모든 출력 라인에 번호 지정
파이프를 지정하고 파일 이름, cat
는 파이프에서 읽으므로 출력은 행 번호가 추가 된 grep
의 출력입니다. 따라서 grep ^b example| cat –n
는 번호가 매겨진 모든 일치하는 줄을 인쇄합니다.
이것은 grep -n ^b example
와 다릅니다. 여기서 grep
는 li를 추가합니다. ne 번호 일치. grep
는 원본 파일의 줄 번호를 알고 있지만 cat
는 grep
그리고 그에 따라 줄에 번호를 매 깁니다.
따라서 입력 파일이 주어지면
$ cat example bar foo basf
우리는 다음을 가지고 있습니다.
$ grep -c ^b example 2 $ grep ^b example |cat -n 1 bar 2 basf $ grep -n ^b example 1:bar 3:basf
답변
Ok 명령 :
-
grep -c ^b example
: 문자b
및 -
로 시작하는 행에 대해 일치하는 행 수를 출력합니다.
grep ^b example | cat -n
: grep 명령의 결과를 cat 명령에 전달하고 줄 번호와 함께 나열합니다.-n
는cat
가 줄 번호와 함께 나열하도록합니다.
예 :
example.txt (콘텐츠 포함) :
media sound3 media sound1 media sound2 find sound -type f -name sound[0-9] -printf "media %f\n" > file.txt find sound -type f -name sound[0-9] -exec bash -c "echo media bash >> file.txt" {} \; find sound -type f -name sound[0-9] -exec bash -c "f="{}"; echo media $( basename ${f}) >> file.txt" \;
(1)의 결과 :
3
(2)의 결과 :
1 media sound3 2 media sound1 3 media sound2
댓글
- 예 당신의 권리!