[Linux] 디렉토리 관련 명령어 총정리(확인, 이동, 생성, 삭제, 복사, 잘라내기)

목차

     

    디렉토리 경로 확인 : pwd

    현재 디렉토리를 경로를 확인하는 명령어는 pwd입니다. 현재 디렉토리의 절대 경로명을 출력합니다. 우분투 터미널을 바로 실행한 뒤 pwd를 입력하면 /home/계정명이 출력됩니다. 이는 현재 디렉토리의 절대 경로명이면서 동시에 접속한 계정의 홈 디렉토리에 대한 절대 경로명이 됩니다. 디렉토리를 이동하면 해당 경로가 바뀌게 됩니다.

     

    디렉토리 이동 : cd [이동할 디렉토리]

    현재 디렉토리에서 다른 디렉토리로 이동할때는 cd라는 명령어를 사용하여 이동합니다. 접근이 금지된 디렉토리를 제외하고는 어느 디렉토리든지 이동할 수 있습니다. cd 명령어와 함꼐 이동하고자 하는 디렉토리를 위와같이 입력하게 되면 해당 디렉토리로 이동하게됩니다. 

    cd [디렉토리명] : 해당 디렉토리로 이동합니다.
    cd : 상위 디렉토리로 이동합니다.

     

    디렉토리 내용 확인 : ls

    디렉토리에 있는 내용을 보는 명령어는 ls입니다. (dir, vdir 명령으로도 디렉토리의 내용을 확인할 수 있습니다.) 경로를 보여주는 pwd 명령어와는 별개입니다. ls명령어는 현재 디렉토리의 내용을 보여줍니다. ls명령에는 많은 옵션들이 있습니다. 옵션의 종류는 아래와 같습니다.

    ls -a : 숨김파일을 포함하여 모든 파일의 목록을 출력합니다.
    ls -d : 현재 디렉토리의 정보를 출력합니다.
    ls -l : 파일의 상세정보를 출력합니다.
    ls -i : 첫번째 행의 inode 번호를 출력합니다.
    ls -A : (.)와 (..)를 제외한 모든 파일을 출력합니다.
    ls -F : 파일의 종류를 표시합니다.
    ls -L : 심벌릭 링크 파일의 경우 원본 파일의 정보를 출력합니다.
    ls -R : 하위 디렉토리의 목록까지 모두 출력합니다.

     

    디렉토리 생성 : mkdir [디렉토리 명]

    리눅스에서는 쓰기 권한이 있는 디렉토리에서 필요에 따라 디렉토리를 생성할 수 있습니다. 디렉토리를 생성하는 명령어는 mkdir입니다. 디렉토리를 한개 만드려면 mkdir [디렉토리명]을 입력해주면 되고 여러개만드려면 공백으로 구분을 지어서 mkdir [디렉토리명1] [디렉토리명2] [디렉토리명3]이런식으로 만들면 됩니다.

    mkdir -p : 하위 디렉토리를 생성할때 차례대로 만들지 않고 중간 디렉토리 없이 바로 그 다음 하위 디렉토리를 만들게되면 "디렉토리를 생성할 수 없습니다." 라는 메시지가 나오는데 위의 명령어를 입력하여 생성하게되면 자동으로 중간단계의 디렉토리를 생성하면서 그 하위 디렉토리를 생성하게 됩니다. (mkdir -p temp/ex1/ex2)

     

    디렉토리 삭제 : rmdir [대상 디렉토리]

    리눅스에서 디렉토리를 삭제하는 명령어는 rmdir입니다. 디렉토리를 한개 삭제하려면 rmdir [디렉토리명]을 입력해주면 되고 여러개를 동시에 삭제하려면 공백으로 구분을 지어서 rmdir [디렉토리명1] [디렉토리명2] [디렉토리명3]이런식으로 삭제하면 됩니다.

    rmdir -p : 제거한 디렉토리의 부모 디렉토리가 비었을 경우 부모 디렉토리도 자동으로 삭제합니다.

     

    디렉토리 복사 : cp -r [복사할 디렉토리] [대상 디렉토리]

    디렉토리를 복사하려면 cp -r [복사할 디렉토리] [대상 디렉토리] 이런식으로 하시면 됩니다. 위의 예시는 ex폴더를 ex2폴더에 복사하는 예제입니다. 파일도 똑같은 방식으로 복사할 수 있습니다.

    cp -a : 원본 파일의 속성, 링크 정보들을 그대로 유지하면서 복사합니다.
    cp -b : 복사할 대상이 이미 있을 경우 기존 파일을 백업하고 복사합니다.
    cp -d : 만약 복사할 원본이 심볼릭 링크일 때 심볼릭 자체를 복사합니다.

    cp -f : 만약 복사할 대상이 이미 있으면 강제로 지우고 복사합니다.
    cp -i : 만약 복사할 대상이 이미 있으면 사용자에게 물어봅니다.
    cp -l : 하드링크 형식으로 복사합니다.
    cp -P : 원본 파일 지정을 경로와 같이했을 경우 그 경로 그대로 복사됩니다.
    cp -p : 파일의 소유자, 그룹, 권한, 시간 정보들이 그대로 보존되어 복사됩니다.
    cp -r : 원본이 파일이면 그냥 복사되고 디렉터리라면 디렉터리 전체가 복사됩니다.
    cp -s : 파일을 심볼릭 링크 형식으로 복사합니다. 원본 파일이름을 절대 경로로 지정해야 합니다.
    cp -u : 복사할 대상이 있을 때 이 파일의 변경 날짜가 같거나 더 최근의 것이면 복사하지 않습니다.
    cp -v : 복사 상태를 보여줍니다.
    cp -x : 원본과 대상 파일의 파일시스템이 다를 경우에는 복사하지 않습니다.
    cp -R : 디렉터리를 복사할 경우 그 안에 포함된 모든 하위경로와 파일들을 모두 복사합니다.

     

    디렉토리 잘라내기 : mv [이동할 디렉토리] [대상 디렉토리]

    디렉토리를 이동시키려면 mv [이동할 디렉토리] [대상 디렉토리] 이런식으로 하시면 됩니다. 위의 예시는 ex2폴더를 ex폴더에 이동시키는 예제입니다. 파일도 똑같은 방식으로 복사할 수 있습니다.

    mv -b : 목적 경로에 같은 이름의 파일(혹은 디렉토리)가 존재하면, 기존 파일을 백업 후 이동시킵니다.
    mv -f : 목적 경로에 같은 이름의 파일(혹은 디렉토리)가 존재하면, 덮어쓸 것인지 묻지 않고 바로 덮어씁니다. 
    mv -i : 목적 경로에 같은 이름의 파일(혹은 디렉토리)가 존재하면, 덮얼쓸 것인지 물어봅니다.
    mv -v : 이동중인 상태를 표시합니다.

    댓글(5)

    • 2020.03.12 10:49 신고

      잘보고가용 ㅎㅎ 제 피드도 놀러오세요 ^^

    • 2020.03.13 00:28 신고

      제겐 어려운 내용이지만 천천히 배워볼랍니다^^

    • 루이지
      2020.09.17 14:52

      안녕하세요. 질문이 있어서 남기고 갑니다.
      혹시 window10에 store를 이용해서 ubuntu를 이용해서 학습중인데요
      이런경우 pwd를 이용하여 경로를 검색해보면 /home/사용자명 이렇게나오는데. 이게 드라이브 내 어디에 위치하는지 알 수 있을까요? 아무리 검색해도 나오지를 않네요..

      • 2020.09.17 15:03

        찾아봤는데 엄청 복잡한 경로에 설치가 되어있네요....

    Designed by JB FACTORY