3 분 소요

중요 명령어: hash, cksum, find, grep, diff

hash 명령

  • 최근에 실행한 프로그램 목록, 해당 위치, 실행 횟수를 표시합니다.
  • 정보는 해시 테이블에 있는 명령으로 유지됩니다.
  • 해시 테이블을 재설정하거나 수정하는 데 사용될 수 있습니다.
  • 위치 정보에는 프로그램의 전체 경로 이름이 포함됩니다.
  • 구문: hash [options] [-p pathName] [options] [commandName …]

해쉬는 무결성을 체크합니다. sh, md5

cksum 명령

  • 이 명령은 파일 또는 데이터 스트림에 대한 체크섬 값을 생성합니다.
  • 전송 중에 파일이 손상되었는지 여부를 확인하는 데 사용됩니다.
  • cksum 명령은 CRC(순환 중복 검사) 값과 파일의 바이트 수를 표시합니다.
  • 파일의 CRC 값이 전송 전후에 달라지지 않았으면 파일이 손상되지 않은 것입니다.
  • 구문: cksum [FileName]

find 명령

  • find 명령은 지정된 디렉터리를 검색하여 특정 기준과 일치하는 파일을 찾습니다.

  • 검색 기준:

    • 소유자
    • 파일 이름
    • 파일 크기
    • 파일 수정 날짜
  • 검색할 디렉터리를 지정하여 범위를 좁힐 수 있습니다.

  • 파일을 찾았을 때 수행할 액션을 지정할 수 있습니다.

  • 구문: find [directory to start from][options][what to find]

    Ex) find /home/student01 -name fileA.txt

find /etc/ -name”*.conf”: /etc 디렉터리 하위에서 확장명이 *.conf인 파일을 찾습니다.

find 옵션

find 명령에 대한 몇 가지 일반적인 옵션은 다음과 같습니다.

옵션 설명
-name 파일 이름으로 검색
-iname 파일 이름으로 검색하되 대소문자 무시
-user 파일 소유자별 검색
-type 파일 유형별 검색

find 명령과 함께 사용하는 액션

  • 검색된 파일의 위치를 출력 파일에 쓰기
  • 검색된 파일에서 명령 실행
  • 검색한 파일 삭제
옵션 설명
-fprint 파일에 출력 쓰기
-exec 명령 실행
-delete 파일 삭제

find 명령의 예제

grep 명령

  • 특정 텍스트 패턴 또는 문자열에 대한 파일 내용을 검색하고 각 항목을 표시합니다.
  • 디렉터리에서 파일 검색도 가능합니다.
  • 검색 작업과 출력을 제어하는 옵션을 제공합니다.
  • 구문: grep
옵션 설명
-i 대소문자 무시
-r 재귀 검색
-l 파일 이름만 나열
-n 줄 번호 표시
-c 일치하는 줄 개수
–files-with-matches 선택한 행을 포함하는 파일 이름이 스탠더드 출력에 기록됨

find와 grep의 비교

  find grep
설명 지정된 기준에 따라 파일 검색 지정된 문자열 또는 텍스트 패턴에 맞춰 파일 내용 검색
용도 파일을 찾을 때 사용 파일에서 문자열을 찾을 때 사용
출력 파일 이름 표시 검색된 문자열의 항목 표시

diff 명령

  • 파일을 한 줄씩 비교하고 차이점을 표시합니다.
  • 두 파일을 비교할 때 유용합니다.
  • 출력을 diff라고 합니다.
  • 구문: diff [options] File1 File2

링크

링크 및 inode

  • 다른 이름을 사용하여 같은 파일을 참조할 때 링크를 사용할 수 있습니다.
  • 링크를 사용해 파일 시스템에 있는 둘 이상의 위치에서 같은 파일에 액세스할 수 있습니다.
  • 모든 파일에는 inode 개체가 있으며, 이는 데이터 위치와 속성을 고유하게 식별합니다.
  • 두 가지 링크 유형
    • 하드 링크: 파일의 inode를 가리킴
    • 심볼릭 링크: 원본 파일 이름 또는 하드 링크를 가리킴

하드 링크

  • 원본 파일의 inode를 가리킴

  • 디렉터리를 참조할 수 없음

  • 원본 파일이 삭제되어도 하드 링크가 삭제될 때까지 해당 데이터는 계속 존재

  • 하드 링크 생성 구문: ln [options] [originalFileName] [linkName]

    Ex) ln /home/userA/dev-project.txt /devprojects/dev-data.txt

심볼릭 링크

  • 원본 파일 이름 또는 하드 링크를 가리킴
  • 디렉터리를 가리킬 수 있음
  • 원본 파일이 삭제되면 원본 이름으로 새 파일을 생성할 때까지 소프트 링크가 끊어짐
  • 심볼릭 링크 생성을 위한 구문: ln –s [options] [originalFileName] [linkName]

Linux 압축 유틸리티

tar 명령

  • 파일 모음을 단일 아카이브 파일로 번들링하여 더 쉽게 복사하거나 다운로드할 수 있습니다.
  • 생성된 번들은 tarball이라고 합니다.
  • 아카이브 파일 내용을 선택적으로 압축할 수 있습니다.
  • 이 명령은 아카이브 파일을 번들 해제하는 데에도 사용됩니다.
  • 예를 들면 다음과 같습니다.
    • file1, file2, file3을 tarball.tar라는 파일로 번들링하고 압축하는 방법: tar -cvf tarball.tar file1 file2 file3
    • tarball에서 파일을 번들 해제 또는 추출하는 방법: tar -xf tarball.tar

일반적인 tar 옵션

옵션 설명
-x tarball 내용 추출
-z gzip 유틸리티로 tarball 내용 압축
-f tarball 이름 지정
-v tarball을 처리하는 동안 파일 이름을 표시하여 자세한 출력 생성

gzip 명령

  • Tarball 등의 파일을 압축하거나 파일의 압축을 풉니다.
  • 예를 들면 다음과 같습니다.
    • tarball 압축 방법: gzip salesdata.tar
    • tarball 압축 해제 방법: gzip -d salesdata.tar.gz

zip 및 unzip 명령

  • zip 명령은 압축 도구로 사용됩니다.
    • 구문: zip –r [FolderName]
  • unzip 명령은 압축 풀기 도구로 사용됩니다.
    • 구문: unzip [FolderName].zip

확인 질문

  1. find 명령을 사용하여 특정 사용자가 소유한 파일을 찾을 수 있습니까?
    네, -user 옵션을 사용하여 파일 소유자별 검색이 가능합니다.
  2. 여러 파일을 하나의 파일로 번들링하는 명령은 무엇입니까?
    tar 명령
  3. 파일이 전송 중에 손상되거나 변경되지 않았음을 절대적으로 보장하면서 해당 파일이 다른 사용자에게 전송되었는지 확인하라는 요청을 받았습니다. 이 강의의 정보를 사용하여 해당 태스크를 수행하려면 어떻게 해야 합니까?
    심볼릭 링크를 사용합니다. 심볼릭 링크는 원본 파일 또는 하드 링크를 가르키기 때문에 원본 파일이 삭제되면 원본 이름으로 새 파일을 생성할 때 가지 소프트 링크가 끊어 집니다.

핵심 요점

여러 가지 명령을 사용하면 Linux에서 파일 작업을 더 쉽게 할 수 있습니다. 다음 명령을 배웠습니다.

  • hash: 명령줄에서 실행되는 프로그램과 명령 기록을 확인하는 데 사용
  • cksum: 파일이 변경되지 않았는지 확인
  • find: 파일 이름, 크기, 소유자 등을 기준으로 파일 검색
  • grep: 텍스트 패턴에 대한 파일 내용 검색
  • diff: 두 파일의 차이점을 빠르게 확인하는 데 사용
  • ln: 지정된 파일에 대한 포인터 생성 tar: 여러 파일을 하나의 파일로 번들링
  • gzip: 파일 크기 압축
  • zip: 파일 내용 압축
  • unzip: 파일 내용의 압축 풀기

카테고리:

업데이트:

댓글남기기