[Linux]디렉토리/파일 관련 명령어

Geeho.a·2020년 10월 28일
0
  • 디렉토리 경로 확인
    현재 디렉토리 경로를 확인. 절대경로명을 출력한다.

    $ pwd
    /home/testuser1

  • 디렉토리 리스트 확인 : ls
    ls 명령어 사용시 옵션을 여러개 붙여서 사용하기도 한다. 서로 상충하는 옵션 사용시에는 제일 마지막에 쓰인 옵션이 적용됨!

    $ ls //현재 디렉토리에 대한 리스트
    $ ls -a //숨김파일 포함하여 모든 항목
    $ ls -d //디렉토리 정보만 표시
    $ ls -F //파일이 디렉토리인 경우 /(슬래쉬), 파일이 실행 가능한 경우 *, 소켓인경우 =, 선입선출법인경우 |, 기호링크인경우 @를 각각 파일이름의 뒤에 추가
    $ ls -l //각파일의 모드,링크수, 소유자, 그룹, 크기(바이트), 최종 수정시간을 표시
    $ ls -m //쉼표로 구분해서 보여짐
    $ ls -r //역순으로 보여짐
    $ ls -R //하위의 서브 디렉토리의 내용도 순차적으로 표시
    $ ls -s //킬로바이트 단위로
    $ ls -t //최종 수정 시간 기준
    $ ls -u //최종 수정시간 대신 최종 액세스 시간
    $ tree //디렉토리, 파일구조를 트리 형식으로 볼 수 있다.

  • 디렉토리 생성

    $ mkdir dir1 //dir1디렉토리 생성
    $ mkdir dir2 dir3 //한번에 여러개 생성 가능
    $ mkdir -p dir4/dir5 //상위 디렉토리 없을 때 만듬 dir4 안에 dir5
    $ mkdir -m 700 dir7 //디렉토리 만들 때 권한 줄 수 있음

  • 파일생성

    $ touch /home/testuser1/dir1/file1 //dir1디렉토리 안에 file1생성

  • 디렉토리 권한 변경

    $ chmod 777 dir2 //chmod [변경할 권한 값][파일or디렉토리]
    --> 결과 : drwxrwxrwx 2 testuser1 testuser1 6 10월 28일 05:37 dir2

  • 권한구성
    총 10개의 문자로 구성되어있다.
    -- 1번째: -(파일), d:폴더/디렉토리, l:링크
    -- 2~4번째: 파일 주인의 읽기/쓰기/실행 권한
    -- 5~7번째: 파일 주인이 속한 그룹의 읽기/쓰기/실행 권한
    -- 8~10번째: 그 외 유저들의 읽기/쓰기/실행 권한

  • 권한 고유 값 : 권한마다 부여된 고유 숫자가 있음(2진법)
    r(읽기) : 4
    w(쓰기) : 2
    x(실행) : 1

  • chmod 사용시 3개의 숫자를 지정해 주어야 하는데 하나의 숫자가 하나의 그룹을 의미한다. 각 권한 구성 2~4, 5~7, 8~10번째 문자를 뜻하고 각 숫자는 r/w/x를 전부 더한 값
    예) 모든 그룹에 모든 권한을 주고싶으면 777로 지정
    예) 파일 주인만 모든 권한을 주고 나머지는 실행 권한만 주기 -> 711

  • 디렉토리/파일 삭제
    rm옵션 : r=파일, 디렉토리를 같이 삭제, f=파일의 유무랑 상관없이 삭제, v=결과 확인

    $ rmdir dir7 //디렉토리 dir7삭제
    $ rm testfile2/test1.txt //testfile2디렉토리 안의 test1.txt파일 삭제
    $ rm .txt //.txt로 끝나는 파일 모두삭제
    $ rm
    //모든 파일삭제
    $ rm -r dir3 //dir3 디렉토리 삭제 -r옵션주면 디렉토리 삭제가능
    $ rm -rf dir6 //r옵션과 f옵션을 함꼐 사용하게 되면 모두 강제로 삭제한다. 하위디렉토리가 있어도 삭제됨.
    $ rm -ri dir4 //삭제할 때 확인 메세지가 계속 나온다 y또는 n을 입력하여 선택

  • 파일 내용 쓰기

    $ cat > /home/testuser1/file1
    어쩌구저쩌구내용
    Ctrl+d -> 내용 입력 완료
    $ cat >> /home/testuser1/file1
    어쩌구저쩌구 추가내용
    Ctrl+d -> 추가내용 입력 완료
    // cat > 내용입력/덮어쓰기
    // cat >> 내용추가

  • 파일내용 읽기

    $ cat file1 //file1파일 읽기
    $ cat -n file1 //왼쪽에 행번호를 내용과 함께 출력
    $ cat -b file1 //빈행을 제외후 행번호와 내용 출력
    $ cat -ns file1 //두줄 이상 빈행인 경우 하나의 빈행으로 출력
    $ cat file1 | more //화면 단위로 출력(내용이 많을 경우 사용)

  • 파일이동

    $ mv dir1/file1 dir2/ //dir1의 file1위치를 dir2로 이동시킨다.
    $ mv -f dir1/file1 dir2/ //파일이 이미 존재하더라도 묻지 않고 덮어 쓴다.
    $ mv -i dir1/file1 dir2/ //옮겨질 파일이 이미 존재하면 덮어쓸것인지 물어봄
    $ mv -b dir1/file1 dir2/ //파일을 지우기 전에 백업본을 만든다.

  • 디렉토리/파일복사

    $ cp -r dir1 dir5/ //dir1디렉토리를 dir5디렉토리로 복사

<옵션>
-i : 복사대상 파일이 있을 경우 실행여부를 물어봄
-f : 복사대상 파일이 있을 경우 확인없이 강제로 복사
-r, -R : 디렉토리 복사할 경우 하위 디렉토리와 파일 모두 복사
-v : 복사 진행상태 출력
-d : 복사대상 파일이 심볼릭(기호,상징)파일이면, 심볼릭 정보를 그대로 유지한 상태로 복사
-p : 원본파일의 소유주, 그룹, 권한, 시간정보를 보존하여 복사
-a : 원본파일의 속성, 링크 정보들을 그대로 유지하면서 복사

0개의 댓글

관련 채용 정보