본문 바로가기

Tip&Tech/Server

[팁] MissFlash의 리눅스 유용 단축키, 명령어 모음(4) - 리눅스 파일 관리

* 본 게시물은 MissFlash가 "CentOS 리눅스 구축관리실무"를 참고로 유용한 단축키 및 명령어를 정리한 것입니다.
* 게시물이 지속적으로 업데이트 될 예정이니, 퍼가기 보다는 링크나 트랙백을 이용해 주세요 :)

* MissFlash의 리눅스 유용 명령어 목록
  • 파일 시간정보 변경(크기가 0인 파일 생성) : touch [옵션] [파일이름]
  • 퍼미션 표기 예 : rwxr-xr-x (4+2+1, 4+0+1, 4+0+1 = 755)
    • r : read (2^2 = 4)
    • w : write (2^1 = 2)
    • x : excute (2^0 = 1)

  • 파일 복사 : cp [옵션] [원본] [사본]
    • -a : 원본 파일의 속성, 링크 정보들을 그대로 유지하면서 복사
    • -R : 디렉토리를 복사할 경우, 그 안에 포함된 하위 디렉토리 및 파일을 모두 복사
    • 더 많은 옵션은 man cp명령으로 확인할 수 있습니다. :)
  • 파일을 특정 폴더에 복사 : cp myfile1 mydir/

  • 파일 이동 : mv [옵션] [원본] [목적지]
    • -b : 같은 이름의 파일이 존재할 경우, 기존 파일을 백업[각주:1]한 후 파일을 복사
    • -f : 덮어쓸 때 물어보지 않고 바로 이동
    • -i : 덮어쓸 때 물어보고 이동
    • -v : 작업한 내용을 표시
  • 여러 파일을 특정 폴더로 이동 : mv myfile* mydir/

  • 파일 삭제 : rm [옵션] [파일이름]
    • -f : 삭제할 파일이 없을 때, 메세지를 보여주지 않음
    • -i : 파일 삭제시 사용자에게 물어봄
    • -r, -R : 디렉토리일 경우, 하위 디렉토리 및 파일을 모두 삭제
    • -v : 삭제되는 파일의 정보 표시

  • 파일 내용 출력 : cat [옵션] [파일이름]
    • -b : 화면 왼쪽에 줄번호 표시(공백 제외)
    • -n : 화면 왼쪽에 줄번호 표시(공백 포함)
    • 더 많은 옵션은 man cat명령으로 확인할 수 있습니다. :)

  • 화면 단위 분할 출력 : more [옵션] [파일이름]
    • -d : 스페이스바나 Q키를 누르라는 프롬프트 출력
    • 스페이스바와 엔터로 다음페이지 출력 가능
    • 더 많은 옵션은 man more명령으로 확인할 수 있습니다. :)

  • 화면 단위 분할 출력 : less [옵션] [파일이름]
    • -n : 행번호를 추가
    • 스페이스바와 엔터, 위/아래 방향키로 다음페이지 출력 가능
    • 더 많은 옵션은 man less명령으로 확인할 수 있습니다. :)

  • 파일 찾기 : find [시작 디렉토리] [각종 문법]
    • -name [문자열] : 파일이름이 "문자열"과 일치하는 파일 찾기(-name *linux*)
    • -user [사용자명] : 특정 사용자가 소유권을 가지고 있는 파일 찾기
    • -perm [퍼미션] : 해당 퍼미션의 파일 찾기
    • -exec [사용할 명령] : 검색된 파일을 입력값으로 해당 명령 수행(-exec rm -rf {} \;)
    • -type ? : 형태가 같은 파일 찾기(d:디렉토리, p:파이프, l:심볼릭 링크, s:소켓, b:블록 파일, f:일반 파일)
    • -size ? : 크기가 일치하는 파일 찾기
    • -atime ? : 최근 며칠내에 엑세스한 파일 찾기(?에 날짜수 명시)
    • -newer [파일명] : 특정 파일보다 최근에 갱신된 파일 찾기

  • 파일내 특정 패턴 검색 : grep [옵션] [파일명]
    • -c : 일치되는 내용이 있는 행의 개수를 표시
    • -n : 일치되는 내용이 있는 행의 행번호와 내용을 함께 표시(-n "lib" install.log)
    • 더 많은 옵션은 man grep명령으로 확인할 수 있습니다. :)

  • 프로그램 실행결과를 다른 프로그램의 입력으로 연결 : |(grep -n i386 install.log | less)
  • 명령의 출력 위치를 변경(리다이렉션) : >, >>, <
    • > : 파일이 없다면 생성하고, 있다면 기존의 내용에 덮어 씀
    • > : 파일이 없다면 생성하고, 있다면 기존의 내용 뒤에 추가함
    • < : 파일에서 표준입력 받음

  • 퍼미션 변경 : chmod [옵션] [파일명](chmod 755 myfile1)
    • -c : 변경된 파일만 자세히 표시
    • -f : 변경되지 않은 파일에 대한 오류를 표시하지 않음
    • -v작업상태를 자세히 표시
    • -R : 하위 디렉토리까지 모두 변경
  • 파일의 소유자나 소유그룹 변경 : chown [옵션] [소유자:소유그룹[각주:2]] [파일명], chown [옵션] [소유자.소유그룹] [파일명]
    • chmod와 동일
  • 파일의 사용자그룹 변경 : chgrp [옵션] [그룹] [파일명]
    • chmod와 동일

  • 파일 압축 : tar [옵션] [파일명](tar -cvzf home.tar.gz /home)
  • 파일 압축 해제 : tar [옵션] [생성파일명] [압축할파일명](tar -xvzf home.tar.gz)
    • -z : gzip으로 압축하거나 해제
    • -x : 압축을 해제
    • -h : 심볼릭 링크가 가리키는 파일을 묶음
    • -j : .bz2 파일의 압축 해제
    • -c : 새 저장 파일 생성
    • -m : 파일의 변경된 시간 정보를 유지하지 않음
    • -N, --after-date DATE, --newer DATE : 특정 날짜보다 새로운 파일만 저장
    • -p : 모든 퍼미션 정보 유지
    • -P : 파일명의 맨 앞 / 문자를 버리지 않음
    • -s : 저장 파일 목록과 같은 순서로 압축 해제
    • -v : 처리중인 파일을 자세히 표시
    • -Z : compress로 압축하거나 해제
    • -f, --file [HOSTNAME:]F : 저장 파일 혹은 장치 파일 F에 저장

* 디렉토리 이름 변경하는 방법 (2009/04/16 추가)
  • mv ./directory_from ./directory_to (directory_from 디렉토리를 directory_to 디렉토리로 변경)

* 디스크 용량 확인 방법 (2009/05/26 추가)
  • df [OPTION] (Filesystem, 1K-blocks, Used, Available, Use%, Mounted on 정보 표시)



리눅스 공부하시느라 수고 많이 하셨습니다. 자, 이제 맛있는 스파게티 한 입 드세요~

  1. 기존 파일명 뒤에 ~를 붙여 백업파일을 만듭니다. [본문으로]
  2. 소유그룹을 생략할 경우, 소유자만 변경됩니다. [본문으로]