필터, 툴

조준형·2022년 12월 29일
0

Linux

목록 보기
5/7

필터

표준 입력장치에 전달된 데이터(주로 텍스트)에 대해 특정한 동작(주로 필터링)을 수행하는 명령

  • 필터링: 문자 치환, 단어 또는 라인 수 세기, 단어 찾기 등
  • 주로 파이프와 같이 사용됨
  • 주요 필터 명령
    • cat: 표준입력으로 전달된 데이터를 그대로 표준출력으로 전달
    • tee: 표준입력으로 전달된 데이터를 파일과 표준출력 양쪽으로 전달
    • grep: 주어진 문자열을 포함하는 라인을 찾는다
    • tr: 문자단위로 치환한다
    • wc: 단어, 라인수, 문자수를 계산한다.
    • sort: 입력 데이터를 정렬한다
    • uniq: 입력 데이터에서 중복을 제거한다
    • sed: 정규식을 사용하여 치환한다
    • head: 파일 앞쪽 일부 라인만 출력(↔tail)

find

주어진 조건과 일치하는 파일을 검색하기 위한 명령

형식

  • $find [-H][-L] [-P][-D debug] [starting points][expression]
    • H, L, P는 symbolic link를 처리하는 옵션
    • -D: 디버깅을 위해 find의 처리과정을 보여주는 옵션
    • -Olevel: find 실행효율을 높이는 최적화 수준을 설정
    • [starting-points]: 검색 시작 위치 (디렉토리), 디폴트는 현재 디렉토리
    • [expression]: 조건식은 test와 action을 -not, -a(-and), -o(-or)로 연결한 것, 디폴트는 -print(파일 이름을 출력)
      • test: -mtime, -answer, -cnewer, -cmin, -regex, -type, -uid, -user 등
      • action: -print, -printf포맷, -delete, -quit 등등
  • find /etc>etcfiles.txt
    • etc 디렉토리의 모든 파일명을 찾아서 etcfiles.txt에 저장
  • find .-name ‘*.sh’
    • 현재 디렉토리 및 서브디렉토리에서 파일명이 .sh로 끝나는 파일을 모두 출력

locate

모든 디렉토리에서 주어진 패턴에 해당하는 파일을 찾음

  • 단, 시스템에 구축되어 있는 인덱스를 사용하기 때문에 새로 추가된 파일들이 검색 대상에서 누락될 수 있음
  • updatedb 명령을 이용하여 최신 인덱스를 구축해야함

형식

  • locate [option] … [pattern]…
    • -A (-all): 주어진 모든 패턴을 만족시키는것만 찾음
    • -b (—basename): basename (디렉토리 부분을 제거한 파일명)이 패턴과 일치하는 것을 찾음 ↔ -w(—wholesome)
    • -c (—count): 파일 개수를 출력
    • -e (—existing): 실행시 실제로 존재하는 파일명만 출력
    • -i(—ignore-case): 대소문자를 가리지 않고 패턴을 검색

sleep

주어진 시간(초 단위)동안 sleep 모드로 대기함

  • 주로 쉘스크립트에서 대기를 위해 사용

time

뒤에 오는 명령을 실행하는데 소요된 시간을 출력함

  • time sleep 5

gzip

파일을 압축하고 압축된 파일은 .gz 확장자가 추가됨

형식

  • $gzip [OPTION]… [FILE]…
    • -d (—decompress): 압축을 해제 → gunzip 명령과 동일
    • -l (—list): 압축된 파일들의 목록을 출력
    • -q (—quiet): 경고 메시지를 출력하지 않음
    • -1 (—fast): 빠른 압축, 압축률을 낮아짐
    • -9 (—best): 압축률을 최대로 높임, 소요시간이 늘어날 수 있음
profile
코린이

0개의 댓글