File system of linux commands

2022. 4. 7. 20:20Programing Language/Linux

○cat : 현재 작업 디렉터리에 있는 파일 or 하위 디렉터리의 목록을 보여주는 명령어

cat 명령어 뒤에 파일이름입력 -> 파일내용출력함 [#cat test.c], 연속출력 o[#cat test.c, test2.c]

cat > test1[내용입력후 ctrl+d눌러저장] -> 파일생성

cat >> test1 -> 기존파일내용수정

cat test1 test2 > test3 -> test1+test2 새로운 test3생성

cat test1 > test4 -> 파일복사

기타옵션 : -n:행번호표시[공백포함], -b:줄번호표시[공백제외], -e:제어문자를^로출력, -s:반복되는공백행을 하나의 행으로처리, -T:탭문자출력... 더 자세한건 cat --help를 통해서 확인

 

○cd : 상위, 하위 디렉토리로 이동할때 사용하는 명령어

.. -> 상위경로이동

- -> 이전경로이동

~ -> 홈디렉토리로이동

/ -> 루트디렉토리로이동

 

○chmod : 파일접근권한변경명령어

#chmod 777 test.c == chmod a=rwx test.c

 

○chown : 파일소유주변경명령어

#chown [변경할파일소유명] test.c

 

○chgrp : 파일그룹변경명령어

#chown [변경할파일그룹명] test.c

 

○cksum : 파일을 확인하는데 사용하는 명령어

1번째 : checksum값, 2번째 : 파일크기, 3번째 : 파일이름

 

○cmp :  파일비교명령어 #cmp[파일이름][파일이름]

옵션 

-b->두파일간의 다른 바이트들을 출력

-i->입력어의최초

-l-> 틀린문자개수출력

-s->아무것도출력x, 종료코드만출력[0:파일같음, 1:파일다름, 2:파일접근불가능]

 

○cp : 파일, 디렉토리를 복사할때 사용하는 명령어

# cp[옵션][복사할디렉토리,파일][복사될 디렉토리,파일] -> # cp test.c test2.c

[경로를 지정하지 않으면 현위치를 defualt로 함]

옵션

-i->덮어쓰기할건지물음

-b->이미존재하는파일이면백업파일생성

-u->최신파일이면복사

-r->하위디렉토리,파일 모두 복사

-a->파일의 속성까지 같이 복사[rwx]

-p->원본파일소유자,그룹,정보까지 복사

-v->현재복사진행작업표시

 

○du : 파일, 디렉토리용량확인명령어

#du[옵션][위치, 파일]

옵션 없이 사용하면 현재경로의 모든파일, 하위디렉토리, 전체용량을 표시함

특정디렉토리 경로를 지정하여 용량확인 옵션 # du -sh [디렉토리경로]

옵션

-a->모든파일의정보출력

-b->바이트단위로출력

-c->모든파일의디스크사용정보, 합계출력

-k->1KB단위로출력

-h->관리자가보기쉬운단위로출력[byte, kbyte, mbyte, gbyte]

-s->지정된 디렉토리내에 존재하는 모든 파일+하위 파일 용량을 출력

 

○df : 파일시스템디스크공간확인명령어

옵션 -a->모든파일시스템출력, -B->지정용량을블럭단위로정하여출력, -total->총합라인추가하여출력, -h:보기편한용량크기로출력... 더자세한정보 df --help

 

○fsck : 파일시스템에서 파일을 체크하고 수리하는 명령어

 

○fuser : 파일이나 소켓을 어떤 프로세스가 사용하는지 알려주는 명령어

 

○ln : 하드링크, 심볼릭 링크를 생성하는 명령어 #ln[옵션] 원본파일대상명

옵션이 없으면 하드링크생성, -s -> 심볼릭 링크생성

 

○ls : 현재경로에 있는 파일, 디렉토리 정보를 출력하는 명령어

옵션

-a->숨겨진파일, 디렉토리출력

-A->. ..을 제외하고 출력

-b->알파벳순서로출력

-B->~로끝나는백업파일제외출력

-c->마지막변경시간출력

-d->최상위디렉토리만출력

-g->사용자권한출력x

-i->파일의 인덱스값출력

-m->, 로 구분하여 출력

-n->사용자, 그룹권한을 숫자로 출력

-r->반대로출력

-R->하위디렉토리까지출력

ls는 옵션이 너무많아서 더 자세한 옵션을 확인하려면 ls --help

 

○lsof : 열려진 파일들을 보는 명령어[ 일반유저의 접근을 허용하지 않도록 Permission을 700이나 100으로 변경하는 것이 보안상 좋음]

 

○mkdir : 새로운 디렉토리생성명령어

#mkdir d1

 

○rmdir : 디렉토리 제거명령어

#rmdir d1

 

○mount :  하드웨어 장치를 액세스 하기 위해 특정한 위치에 연결해 주는 명령어 

-t->마운트할 파일시스템유형선택

-v->마운트된상태출력

-f->마운트할수있는지체크

-r->읽기만가능하게 마운트

-w->읽기, 쓰기가 가능하게 마운트

 

○mv :  파일 이름을 변경하거나 이동함 #mv[옵션][이동할파일][이동될위치]

#mv test.c d1 -> test.c파일을 디렉토리d1으로 이동

#mv test.c test2.c -> test.c파일을 test.2파일로 이름 변경

#mv test.c /root/d1 ->test.c파일을 /root/d1으로 이동

#mv 

 

○pwd : 현재 작업하는 디렉터리의 위치를 확인하는 명령어

 #pwd -> /root/d1

 

○rm : 파일, 디렉토리를 삭제 명령어

#rm test.c

#rm *

#rm  -r d1/ [디렉토리삭제옵션 -r]

#rm -rf d1/[r+f옵션 -> 경고없이 강제삭제]

 

○split : 큰파일을 여러 작은 파일로 나눌때 사용하는 명령어

 

○touch : 파일이 없을때 빈파일을 생성, 파일스탬프를 현재시간으로 변경하는 명령어

#touch test.c -> test.c의 타임스탬프를 현재시간으로 업데이트함

#touch test.txt -> test.txt파일이 없을때 새로운 빈 파일생성

 

○umask : 파일, 디렉토리를 새로 생성할때에 접근권한을 설정하는 명령어

리눅스처럼 다중사용자가 있는 경우 사용자 서로를 보호할 수 있게 시스템관리자는 umask값을 0022로 줌

root에서의 umask값 -> 0022

 

일반사용자에서의 umask값 -> 0002

 

기본적으로 리눅스에서 파일권한은 666, 디렉토리권한은 777로 설정됨

새 파일의 권한 비트를 계산하려면 기본값에서 umask 값을 빼주면 됨

하지만 root, 일반사용자의 umask값이 다르므로 새 파일의 권한비트의 값도 다름

 

root

파일 : 666 - 022 = 644 -> user은 파일을 읽고 수정 group&other은 파일을 읽을 수만 있음

디렉토리 : 777-022 777 - 022 = 755 755. user은 디렉토리로 cd하여 디렉토리의 파일을 읽거나 수정, 작성, 삭제할 수 있음. group&other은 디렉토리로 들어가서 파일을 나열하고 읽을 수 있음.

 

일반사용자

파일 : 666 - 002 = 664 -> user&group은 파일을 읽고 수정 other은 파일을 읽을 수만 있음

디렉토리 : 777-002 775 - 022 = 755. user&group은 디렉토리로 cd하여 디렉토리의 파일을 읽거나 수정, 작성, 삭제할 수 있고 other은 디렉토리로 들어가서 파일을 나열하고 읽을 수 있음

 

옵션 

-s->마스크값을 기호 표기법으로 표시함

 

'Programing Language > Linux' 카테고리의 다른 글

Linux commands related to document  (0) 2022.04.08
Linux commands related to search  (0) 2022.04.08
Permission of linux commands  (0) 2022.04.07
Linux file system structure  (0) 2022.03.27
Vi editor  (0) 2022.03.22