리눅스(Linux)에서 문자, 단어, 줄(line) 수를 출력하는 wc 명령어 사용방법에 대해 적어봅니다.
해당 명령어 프로그램은 표준 유닉스 프로그램으로서 대부분의 리눅스 배포판에서 사용할 수 있습니다.
wc 명령어를 사용해 각각의 파일에 대한 문자(char), 단어(word), 줄(line), 바이트(byte) 수를 알 수 있습니다. [1]
사용 방법 : wc [OPTION]... [FILE명]...
-m : 지정한 파일의 문자수(char)를 출력
-w : 지정한 파일의 총 단어수(word) 출력
-l : 지정한 파일의 줄 수(line) 출력, 행수(row) 출력
-c : 지정한 파일의 bytes 출력
-L : 지정한 파일의 모든 행중 길이가 가장 긴 행의 문자수를 출력
사용 예 1번 : wc -l busdata.csv <- busdata.csv 파일의 줄 수(line), 행수(row) 출력
사용 예 2번 : wc busdata.csv -cm <- busdata.csv 파일의 문자 갯수와 Bytes 출력, 예시처럼 옵션이 뒤로 가도 상관 무
사용 예 3번(다수의 파일 동시 확인) :wc busdata.csv busdata2.csv <- 2개 파일의 줄수, 단어수, 문자수 출력
옵션 생략 시 줄, 단어, Bytes 수를 기본으로 출력
busdata.csv 파일은 11832 줄, 47394 단어, 1971234 Bytes 로 이루어졌음
-m, -c 2가지 옵션으로 해당 파일의 문자수와 Bytes를 출력
busdata.csv 파일은 1563594개의 문자, 19712434 Bytes로 이루어졌음
busdata.csv, error.log 2개 파일의 줄, 문자, Bytes 수 확인
홈 디렉터리(~)의 디렉터리 개수 확인 결과 3개인 것으로 확인
ls -lh ~ : 홈 디렉터리(~)의 파일목록(List Segments) 확인, 옵션 -l(각각의 파일을 행단위로 표시), 옵션-h(용량을 사람(human)이 보기 쉽게 표현)
| (Linux Pipe, 리눅스 파이프) : 프로세스의 출력 스트림을 다른 프로세스의 입력 스트림으로 사용하는 특수 기호 ex) A | B는 A 커맨드의 표준 출력을 B의 표준 입력으로 사용
위의 예를 보면 ls -lh ~ 의 표준 출력을 grep 커맨드의 표준 입력으로 전달
grep "^d" : 표준 입력 중 d로 시작하는 입력만 출력
GREP(Global Regular Expression and Print), "^d"에서 ^는 Regular Expression으로 입력의 첫 시작을 의미하고 ^d가 되어 입력의 첫 시작이 d인 경우에 출력하겠다는 의미가 됨
제가 찾아보고, 아는 한도내에서 wc명령어를 정리해봤습니다. wc 명령어가 추가적으로 궁금하시면 man wc, info wc로 확인할 수 있습니다.
[1] 위키백과, wc(유닉스), https://ko.wikipedia.org/wiki/Wc_(%EC%9C%A0%EB%8B%89%EC%8A%A4)
[2] Youngjae님 블로그, wc옵션 설명, https://blog.naver.com/dudwo567890/130155651122
[3] JDM's님 블로그, 리눅스 파이프(|) 설명, https://jdm.kr/blog/74
[4] 위키백과, grep명령어 설명, https://ko.wikipedia.org/wiki/Grep
[Linux] 데이터 랜덤 추출 (sort , shuf) (0) | 2021.02.16 |
---|---|
엘라스틱서치(elasticsearch)에 IP 설정해서 외부에서 접속하기 (0) | 2020.03.30 |
scp 명령어로 파일 전송하기(AWS에서 로컬로 다운받기 예제) (0) | 2019.12.31 |
리눅스(Linux)에서 crontab을 이용해 정기작업 등록하는 방법 (0) | 2019.12.28 |
리눅스(Linux)에서 일회성 명령어 실행 예약하는 방법(at 명령어) (0) | 2019.12.27 |