일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- AWS
- Kubernetes
- Reducer
- Redux
- 기술PM
- 모캠
- #Swagger
- javascript
- #스웨거
- SRE
- 프로세스
- 프로세스 통신
- 쿠버네티스
- React
- #Swagger-editor
- server
- Site Reliability engineering
- 모두의캠퍼스
- IP
- 쿠버네티스 컨트롤러
- 카카오게임즈
- ecs
- docker
- #Swagger-ui
- React.js
- #Swagger-codegen
- 북딜
- fluentd
- action
- #api 문서화
- Today
- Total
탕구리's 블로그
리눅스 파일 관리하기 명령어 본문
리눅스 파일 관리하기
리눅스에서는 파일을 통해 텍스트, 이미지, 영상, 디렉터리 정보, 네트워크 소켓, 자료의 흐름, 시스템 장치까지도 파일로 처리합니다.
1. 리눅스에서 파일의 대,소문자 구별은 엄격합니다.
2. . 파일 이름은 최대 256자 까지 가능하며, 공백을 포함한 특수문자를 사용 가능( 하지만, 특수문자 사용은 지양합니다.)
파일 정보 확인하기
파일 정보를 확인하는 명령은 ls [옵션] [파일] 형식으로 입력합니다.
옵션
-l : 파일의 형태, 파일의 소유권과 허가권, 파일 크기, 파일을 최종적으로 변경한 날짜와 시간을 알려준다.
-a : 숨겨진 파일까지 보여줍니다.
* ( '.' 현재디렉터리를 의미합니다, '..' 상위디렉터리를 의미합니다, '.'으로 시작하는 파일은 숨김파일을 의미합니다.)
파일 정보의 이해
ls -l 명령에 의해 출력되는 파일 목록은 다음과같이 표시됩니다
ex) drwxrwxr-x 6 dongsu dongsu 4096 5월 19 02:30 project : 접근권한, 링크, 소유자, 소유그룹, 크리 최종 변경한 날짜와 시간, 파일이름 순 입니다.
1. 접근권한
(1) d (2)rwx (3)rwx (4)r-x
(1) 파일의 종류를 의미합니다.
(2) 소유자를 의미합니다.
(3) 소유그룹을 의미합니다.
(4) 다른 모든 사용자를 의미합니다.
2. 소유권 변경하기
소유권을 변경하는 명령어는 chown(change of the owner of a file)입니다. chown [옵션][사용자 계정 및 그룹][파일]의 형식을 갖습니다.
* 파일의 소유권을 변경할 때는 루트 계정의 권한이 필요합니다
sudo chown dongsu sample -> sample파일의 소유권자를 "dongsu"로 바꾼다.
sudo chown dongsu:dongsu sample -> 소유자와 그룹을 동시에 바꿀 수 있습니다. 파일의 소유권자는 변경되지만 디렉토리 안에 있는 파일의 권한은 유지된다.
sudo chown -R dongsu:dongsu sample/ -> sample 디렉터리 안에 있는 모든 파일의 소유권은 변경시켜 줍니다.
3.접근 권한 변경하기
접근 권한을 병경하는 명령은 chomod(change mode)입니다. chomod [레퍼런스][연산자][접근권한][파일] 형식으로 입력 합니다
chown과는 다르게 파일의 소유자도 명령을 내릴 수 있습니다.
레퍼런스 : 변경할 대상 소유자(user), 그룹(group), 다른 모든 사용자(others)를 뜻하며 차례대로 u,g,o로 표시한다.
a는 소유자와 그룹, 다른 사용자 모두를 의미한다.
권한을 부여하는 연산자는 "+", 해지하는 연산자는 "-"이다.
접근 권한은 읽기(read), 쓰기(write), 실행(excute)로 각각 r,w,x로 표현한다.
chmod ugo+rwx sample -> sample 파일의 접근 권한을 u,g,o모두에게 r,w,x를 부여한다.
chmod u-rwx sample -> other에 대한 모든 접근 권한을 해제합니다.
chmode 444 sample sample -> sample 파일에 대해 u,g,o 모두에게 읽기권한을 줄수 있습니다.
400 : 파일 소유자의 읽기권한
200 : 파일 소유자의 쓰기 권한
100 : 파일 소유자의 실행 권한
40 : 그룹 사용자의 읽기권한
20 : 그룹 사용자의 쓰기 권한
10 : 그룹 사용자의 실행 권한
4 : 파일 소유자의 읽기권한
2 : 파일 소유자의 쓰기 권한
1 : 파일 소유자의 실행 권한
4. 리눅스 시스템 디렉터리
리눅스를 설치하면 기본적으로 시스템 디렉터리가 생성됩니다. 기본으로 생성되는 시스템 디렉터리들은 함부로 삭제하거나 변경해서는 안됩니다.
/ : 모든 디렉터리가 시작하는 뿌리인 최상위 디렉터리 "루트"라고 읽는다.
/dev : 시스템에 설치된 주변 장치(마우스, 모니터, 비디오카드, 하드디스크)들이 파일도 등록되어 있는 디렉터리
/etc : 시스템 설정 파일이 들어 있는 디렉터리입니다. 사용자, 그룹 정보, 파일 시스템 테이블과 같이 기본적으로 시스템의 환경을 경정하는 파일들
/bin : 사용자가 사용하는 가장 기본적인 명령들이 실행 파일 형태로 저장되어 있습니다.
/lib : 공유 라이브러리 파일들이 저장되어 있는 디렉터리, 시스템의 부팅과 응용 프로그램의 실행에 필요한 코드들이 들어있다.
/home : 사용자 계정 생성시 계정의 이름과 동일한 디렉터리가 /home 안에 만들어 진다.
/root : 루트를 위해 제공되는 홈 디렉터리
/proc : 시스템 정보를 제공하는 가상 파일 시스템 디렉터리, 해당 디렉터리의 파일들을 통해 CPU정보, 인터럽트 목록, 입출력 주소 목록과 같은 시스템 상태를 모니터링 할 수 있다.
/sbin 시스템 관리 명령들이 들어있는 디렉터리
/tmp : 임시로 파일을 생성 또는 삭제하는 공간
/var 시스템을 운영하면서 생기는 각종 임시파일 을 저장하는 디렉터리
/usr 시스템, 응용 프로그램에서 필요한 파일들이 저장되어 있는 디렉터리 입니다.
5. 파일과 디렉터리 다루기
pwd : 현재 작업하고 있는 디렉터리 위치를 알려줍니다.
mkdir [생성할 디렉터리 명] : 디렉터리를 생성합니다.
rmdir [제거할 디렉터리] : 디렉터리를 제거합니다.
mkdir -p(parents) 옵션은 상위 디렉터리를 포함하는 하위 디렉터리를 생성합니다.
mkdir -p dongsu/genius
touch [파일명] : 빈 파일을 생성합니다.
cp [옵션][원본파일][사본파일] : 현재 작업 디렉터리에 다른 이름의 파일을 복사해서 만듭니다.
cp -r : cp 명령은 디렉터리 전체를 복사합니다.
mv [옵션][원본파일][사본파일] : 파일을 이동하는 명령어
6. 파일 내용 확인하기
cat [파일명] : 파일 내용을 화면에 표시하는 명령
보여줄 내용이 많은 경우에는 more 이나 less 명령어를 사용합니다.
more [파일명] : f를 누르면 다음 화면, b를 누르면 이전 화면 , enter 한줄 한줄, q를 누르면 종료
less [파일명] : g(가장 첫화면) G(가장 마지막 화면) /검색문자(검색) n,N 검색결과 찾기
head [파일명] : head -n 15 15번재 라인까지만 출력
tail [파일명] : tail은 마지막 부터 보여줌,
tail -f : 실시간으로 로그를 갱신
7. 검색하기
find [탐색경로][옵션][표현식] : find -name <- 경로를 생략하고 이름으로 검색하는 옵션
sudo find / -name backup : 전체 디렉터리 중 backup으로 된 파일을 찾습니다.
8. 파일 이름에 정규 표현식 적용하기
grep [옵션][표현식][파일명] 형식으로 입력합니다
파일 내용을 검색하는 명령어 grep 입니다.
grep pit teamdata : teamdata안에 있는 pit이란 문자열을 포함하는 행을 보여줍니다.
grep -c pin teamdata : pit이 포함된 행의 개수를 보여줍니다.
grep -n pit teamdata : 문자열이 포함된 행과 행번호를 보여줍니다.
grep -i pit teamdata : 대소문자 구별 없이 문자열을 검색합니다.
ex) ls -l | grep base
- ls -l의 결과 중에서 base라는 문자열을 검색하라는 명령어 입니다.
파이프 라인과 함께 혼용하여 사용하면 유용한 결과를 얻을 수 있습니다.
생각보다 명령어가 많아서 정리하며 치는 것도 정말 힘드네요...
'Conception > Linux' 카테고리의 다른 글
for문 활용하기 - shell script (1) | 2020.03.12 |
---|---|
리눅스 프로세스 관리하기 명령어 (0) | 2017.12.21 |