Search
Duplicate
📒

[Linux CLI] 03-3. 파일 시스템 - 파일 내용, 검사

상태
완료
수업
Linux
주제
Linux CLI
4 more properties
참고

파일 시스템 검색 명령어

cat, more, less (파일 내용확인)

NOTE
파일내용을 확인하는데 주로 사용된다!
cat [파일명] # 파일 내용출력 more [파일명] # Space를 누르면 다음페이지 넘어감 less [파일명] # more의 확장버전, space(앞), b(뒤)로 페이지 이동가능 cat > file1 [내용입력] # 내용입력한걸 file1에 저장한다.
Bash
복사

wc (line, word, byte 수)

NOTE
사용자가 지정한 파일의 행, 단어, 문자수를 세는 프로그램
# wc [-clmw] [파일명] wc file.txt # 줄, 단어 ,문자 개수 출력 wc -l file.txt # 줄 wc -w file.txt # 단어 wc -m file.txt # 문자 개수
Bash
복사

head, tail (시작, 끝 출력)

NOTE
head는 시작, tail은 끝에서 가져온다!
# head -n[숫자] [파일명] - 파일의 시작에서 1~n번째 줄 (기본 10) head -n15 file.txt # 시작에서 15번째줄 까지 출력 # tail -n[숫자] [파일명] - 파일의 끝에서 1~n번째 줄 (기본 10) tail -n15 file.txt # 끝에서 15번째줄 까지 출력
Bash
복사

tac, rev (역순 출력)

NOTE
파일의 유형을 알려주는 명령어이다!
tac file.txt # cat을 역순으로 출력 rev file.txt # 모든라인 뒤집어서 출력
Bash
복사

grep (문자열 검색)

NOTE
파일명에서 특정 문자열을 찾아내는 명령어!
# grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...] grep 'test' 파일명 # 특정 파일에서 test 문자열 찾기 grep 'test' 파일명1 파일명2 # 여러 파일에서 test 문자열 찾기 grep 'test' * # *(모든파일, 숨겨진파일 x) grep -r 'test' . # r(재귀), .(디렉터리 취급) grep -rl "test" . # l(파일 이름만), 현재 경로와 내부에서 test 내용을 가진 파일 grep -ri "test" . # i(대소문자 무시검색) grep -rc 'test' . # c(라인수 출력) grep -o 'test' testfile | wc -l ls | grep *.txt # 와일드카드 대신 정규식을 사용하기에 안먹힘 ls *.txt # 정상적으로 와일드카드 먹힘 ls | grep ".*.txt" # 정규식검사 find . -type f -exec grep -H FINDME {} \ # H(파일명 같이출력), FINDME가 들어간 라인과 파일출력 tail -f mylog.log | grep 192.168.15.86 # 실시간 로그 보기 cat mylog.txt | grep 'Apple' | grep 'Banana' # 사과, 바나나 문자열찾기 grep -m 100 'Apple' mylog.txt # 최대 검색 결과 제한하기
Bash
복사

sort (정렬)

NOTE
사용자가 지정한 파일의 내용을 정렬하거나 정렬된 파일의 내용을 병합할 때 사용한다.
# sort [옵션] ... [파일명] ... sort file.txt # 알파벳순 정렬 sort -r file.txt # r(역순정렬) sort -n file.txt # n(숫자 순서정렬) sort -k 2 file.txt # k(n째 필드기준 정렬) sort -u file.txt # u(중복라인 제거) printenv | sort # 환경변수 정렬
Bash
복사

tr (분리 처리)

NOTE
입력을 주어진 분리자로 분리하여 명령을 처리한다!
# tr [option] [set1] [set2] - set1 -> set2로 변경 echo "a:a" | tr ":" " " # :을 공백으로 변경 echo "linuxize" | tr 'lmno' 'wxyz' echo "Hello World" | tr 'a-z' 'A-Z' # 소문자 -> 대문자 tr 'a-z' 'A-Z' < input.txt > temp.txt && mv temp.txt input.txt # 파일 문자 모두 대문자변경 echo "abc" | tr -d "b" # d(제거), b를 제거 echo "This is a test" | tr -s ' ' # s(연속된걸 하나로 압축), 연속된 공백을 하나로 줄이기
Bash
복사

cmp (파일 비교, 다른지점 출력)

NOTE
입력을 주어진 분리자로 분리하여 명령을 처리한다!
cat file1.txt # 예제파일 1 hello world 1 cat file2.txt # 예제파일 2 hello world 2 cmp file1.txt file2.txt # byte13, line 3(문자 13번째, 라인 3번째부터 다르다.)
Bash
복사

diff (파일 비교, 같아지는 조건 출력)

NOTE
입력을 주어진 분리자로 분리하여 명령을 처리한다!
diff file1.txt file2.txt # 3c3, 4 (1번 파일의 3번째줄을 2번파일의 3~4번째 줄로대체)
Bash
복사

sed (streamlined editor, 패턴처리)

NOTE
텍스트 데이터를 패턴 매칭하여 처리한다!
sed 범위 | -옵션 '[ line address ] command'
Bash
복사
sed는 명령행에서 파일을 인자로 받고, sed 명령어를 통해 작업한 후에 결과를 화면에 확인할 수 있다.