728x90
AWS를 이용하여 무중단 배포 학습을 해보려고 한다.
먼저 가장 기본적인 리눅스 명령어에 대해서 정리해보려고 한다.
리눅스 명령어는 기본적으로 Shell을 사용하여 OS(Ubuntu)에게 명령하면
OS가 번역하여 컴퓨터와 소통한다.
리눅스 명령어
기본적으로 모든 명령어는 명령어 뒤에 --help 옵션을 부여하면 자세한 사용방법이 나오게 된다.
예를들어 ls에 관련된 명령어는 ls -help라고 입력하면 된다.
(깔끔한 터미널 테마등이 아니라면.. 그냥 구글링이나 Chat GPT한테 물어보는게 나을수도..!
0. pwd : 현재 위치 경로
1. ls (List Segments) : 현재 위치에 존재하는 파일 목록 조회
- ls -l : 파일의 상세 정보
- ls -a : 숨김 파일 표시
- ls -t : 파일들을 생성시간순 정렬 (가장 최신 것부터)
- ls -rt : 파일들을 생성시간순 정렬 (가장 오래된 것부터)
- ls -f : 파일을 표시할 시 마지막 유형에 나타내는 파일명을 끝에 표시
2. cd (Change Directory) : 디렉터리 이동
- cd 디렉터리 경로 : 이동하려는 디렉터리로 이동
- cd ~ : 홈 디렉터리로 이동
- cd / : 가장 최신 디렉터리로 이동
- cd . : 현재 디렉터리
- cd .. : 이전 경로로 이동
- cd - : 이전 경로로 이동
3. touch : 0바이트 파일 생성, 파일의 날짜와 시간을 수정
- touch filename : 작성한 파일 이름으로 파일 생성
- touch -c filename : 파일이름의 시간을 현재 시간으로 갱신
4. mkdir (Make Directory) : 디렉터리 생성
- mkdir dirname : dirname이라는 디렉터리 생성
- mkdir dir1 dir2 : 한 번에 여러개의 디렉터리 생성
- mrdir -p dirname/sub_dirname : dirname이라는 디렉터리 생성후, 그 안에 sub_dirname이라는 하위 디렉터리도 생성
- mkdir -m 700 dirname : 특정 퍼미션(권한)을 갖는 디렉터리 생성
* 파일의 퍼미션
8진수 2진수 권한 의미
- 000 --- 아무 권한 없음
- 001 --x 실행 권한만 있음
- 010 -w- 쓰기 권한만 있음
- 011 -wx 쓰기,실행 권한 있음
- 100 r-- 읽기 권한만 있음
- 101 r-x 쓰기,실행 권한 있음
- 110 rw- 읽기,쓰기 권한 있음
- 111 rwx 모든 권한 있음
예를 들어 '777'의 경우 이진수로 111111111이고 rwxrwxrwx라는 의미를 가지므로 파일 소유자, 소유 그룹, 일반 사용자에게 읽기, 쓰기, 실행의 모든 권한을 주는 설정.
5. cp (Copy) 파일/디렉터리 복사
- cp file1 file2 : file1을 file2이라는 이름으로 복사
- cp -f file1 file2 : 강제 복사 (file2가 기존에 있는 경우, 해당 file2를 강제로 지우고 복사 진행)
- cp -r dir1 dir2 : 디렉터리 복사. 폴더 안의 하위 경로와 파일들 모두 복사한다.
6. mv (Move) 파일/디렉터리 이동
- mv file1 file2 : file1 파일을 file2 파일로 변경
- mv file1 /dir : file1 파일들을 dir 디렉터리로 이동
- mv file1 file2 /dir : 여러 개의 파일을 dir 디렉터리로 이동
- mv /dir1 /dir2 : dir 디렉터리를 dir2 디렉터리로 이름 변경
7. rm (Remove) 파일/디렉터리 삭제
- rm file1 : file1을 삭제
- rm -f file1 : 강제 삭제
- rm -d dir : 빈 디렉터리 삭제
- rm -r dir : 비어있지 않은 디렉터리 삭제 (디렉터리 삭제는 그냥 -r 옵션을 주고 삭제하는게 나을 것 같다.)
8. cat (Catenate) 파일의 내용을 터미널에 출력, 리다이렉션 기호 (>)를 사용하여 새로운 파일 생성
- cat file1 : file1 내용을 터미널에 출력
- cat file1 file2 : 많은 파일의 내용을 출력
- cat file1 file2 | more : file1과 file2의 내용을 페이지별로 출력
- cat file1 file2 | head : file1과 file2의 내용을 처음부터 10번째 줄까지만 출력
- cat file1 file2 | tail : file1과 file2의 내용을 끝에서부터 10번째 줄까지만 출력
9. redirection (> , >>) : 화면의 출력 결과를 파일로 저장
- > : 기존에 있는 파일 내용을 지우고 저장 (덮어쓰기)
- >> : 기존 파일 내용 뒤에 덧붙여서 저장 (덮어쓰지 않고 기존 파일에 추가) (로그 저장할 때 유용할 듯?)
- < : 입력(파일, 텍스트 등)을 명령어에 실행 (덮어쓰기)
- << : 입력을 명령어에 실행 (덮어쓰지 않고 기존 파일에 추가)
10. alias : 자주 사용하는 명령어들을 별명으로 정의하여 쉽게 사용할 수 있도록 설정
- alias 별명 : '명령어 정의'
- ex) alias lsa = 'ls -a' : lsa를 실행하면 -a 옵션을 갖는 ls를 실행
- unalias lsa : unalias lsa : lsa라는 alias를 해제
기본적인 리눅스 명령어를 알아보았다.
이전에 막연히 다른 사람이 짜놓은 스크립트를 볼 때 명령어들을 따라치기만 했는데, 그때는 정리도 안되고 무슨말인지 몰랐지만 실행이 되니까 넘어가는 경우가 많았다.
하지만 이번 기회로 정리를 하게 되어서 각 명령어들을 손에 익힐 수 있게 해야겠다.
'인프라' 카테고리의 다른 글
[AWS 무중단 배포] 4. 리눅스 명령어 find || 표준 입출력 (0) | 2024.02.05 |
---|---|
[AWS 무중단 배포] 3. 리눅스 명령어 프로세스 실습 (0) | 2024.02.05 |
[AWS 무중단 배포] 2. apt를 사용하여 Tomcat 띄우기 (0) | 2024.02.05 |