Linux의 특징
- Linux는 오픈소스
- 소스코드를 자유롭게 보고 수정할 수 있다는 오픈소스의 특성 덕분에 수많은 종류의 Linux 기반 OS가 존재함
- 마우스 / 키보드를 사용해 조작하는 GUI(Graphical User Interface) 환경의 Windows, Mac과는 다르게 기본적으로 CLI(Command Line Interface) 환경에서 사용됨
Linux의 명령어는 명령어 -옵션 의 구조로 이루어져 있음
- ls : 파일 목록을 보여주는 명령어
- ls -l : 파일 목록을 더 자세히 보여주는 옵션
- ls -a : 숨김 파일까지 보여주는 옵션 2개 이상의 옵션을 한번에 사용할 수도 있음
- ls -al : 옵션의 순서는 무관함
일부 명령어는 source와 destination의 구조로 이루어져 있음
- cp a.txt a_copy.txt : a.txt를 a_copy.txt로 복사
- cp -r folder folder_copy : folder를 복사 할 때는 -r 옵션이 필요함
파일과 디렉토리
상대경로와 절대경로
- 절대경로를 사용할 경우 현재 위치와 관계 없이 절대적인 경로를 입력하여 사용합니다
-
- ex) cd /home/user/example/dir/
-
- 상대경로는 내 현재 위치를 기준으로 경로를 지정하게 됩니다
-
- ex) cd ./dir/ 현재 위치에 존재하는 dir 디렉토리로 이동
- ex) cd ../ 현재 위치를 기준으로 상위 디렉토리로 이동
-
- wild card(*)란?
- 특정 파일이나 디렉토리를 지정할 때, 이름을 지정해 줘야 하는 경우에 wild card(*)를 사용하면 원하는 파일을 더 빠르게 탐색하거나 실행시킬 수 있습니다.
ls -l ./*.txt # .txt로 끝나는 모든 파일 목록 출력하기
디렉토리 생성 이동
- mkdir / 디렉토리 생성하기
- pwd / 현재 경로 확인하기
- cd / 경로 이동하기
- ls / 파일 목록 보기
- ls # 현재 위치에 파일 목록 보기
- ls ./test # test 경로에 파일 목록 보기
- ls -l # 현재 위치에 파일 목록을 더 자세히 보기
- ls -a # 현재 위치에 숨겨짐 파일을 포함해서 보기
- ls -al # 현재 위치에 숨겨진 파일을 포함해서 목록을 더 자세히 보기
- # 이외에도 다양한 옵션들이 존재하며, ls --help 명령어로 확인 가능합니다.
파일 생성 삭제
- touch / 파일 생성하기
- touch test.txt # test.txt 파일 생성하기
- cp / 파일 복사하기
- cp test.txt test_copy.txt # test.txt 파일을 test_copy.txt라는 이름으로 복사하기 cp -r directory directory_copy # 폴더를 복사할 경우 -r 옵션 사용
- mv / 파일 이동하기
- mv ./directory1/test.txt ./ # directory1 경로의 test.txt 파일을 현재 경로로 이동
- # mv는 파일의 이름을 변경할 때도 사용됩니다. mv test.txt text2.txt # test.txt 파일의 이름을 test2.txt로 변경
- rm / 파일 삭제하기
- rm test.txt # test.txt 파일 삭제 rm -r directory # 디렉토리를 삭제하기 위해서는 -r 옵션을 붙여줘야 합니다
리눅스에서 숨김 파일 취급하기
- 리눅스에서는 파일 혹은 디렉토리 이름이 .으로 시작할 경우 숨김 파일로 취급됩니다
- ex) touch test : test라는 이름의 파일 생성 touch .test : .test라는 이름의 숨김 파일 생성
- 숨김 파일은 ls 명령어의 -a 옵션으로 확인할 수 있습니다.
파일 읽고 쓰기
vi 편집기 활용해보기
- vi 편집기 mode 종류
- insert mode : 텍스트를 입력 할 수 있는 상태
- commend mode : 특수한 commend를 입력 할 수 있는 상태
- insert mode 진입 방법
- i : 현재 위치에서 insert mode 진입
- a : 현재 위치에서 커서를 한 칸 앞으로 이동 후 insert mode 진입
- A : 현재 위치에서 가장 마지막 텍스트로 이동 한 후 insert mode 진입
- o : 현재 위치에서 한칸 개행 한 후 insert mode 진입
- esc : insert mode 나가기
- commend mode 명령어
- u : undo (ctrl + z와 동일)
- ctrl + r : redo
- gg : 커서를 가장 처음으로 옮김
- G : 커서를 마지막 줄로 옮김
- dd : line 잘라내기
- yy : line 복사
- p : 붙여넣기
- :se nu : 라인 줄 표시
- :숫자 : 숫자 라인으로 이동 (ex - :10 : 10번째 라인으로 이동)
- 특정 단어 검색
- /word : word라는 단어를 검색
- /\\cword : 대소문자를 구분하지 않고 word라는 단어를 검색 (ex - /\cword)
- n : 다음 단어 검색
- N : 이전 단어 검색
- 수정한 문서 저장
- :w : 저장
- :wq : 저장 하고 나가기
- :q : 나가기
- :q! : 수정내역이 있어도 저장하지 않고 강제로 나가기
파일에 있는 내용 확인하기
- cat / 파일 내용 보기
- cat test.txt # test.txt 파일의 내용 보기
- head / 파일의 시작 부분 보기
- head test.txt # test.txt 파일의 첫 10줄 내용 보기 head -50 test.txt # text.txt 파일의 첫 50줄 내용 보기
- tail / 파일의 끝 부분 보기
자주 사용되는 명령어
- tab / 자동완성 시키기
- 키보드의 tab 버튼을 활용해 파일, 디렉토리 이름 등을 자동완성 시킬 수 있습니다.
- grep / 특정 문자열이 포함 된 파일 찾기
- grep word ./* # 현재 경로의 모든 파일을 대상으로 word라는 단어가 포함된 파일 찾기 grep word ./* -r # -r 옵션을 붙이면 디렉토리 내부까지 모두 탐색합니다.
- find / 특정 조건의 파일 찾기
- find / -name "*.txt" # 최상위 경로에서 .txt로 끝나는 파일 혹은 디렉토리 검색 find ./ -type d # 현재 경로에서 모든 디렉토리 검색 find ./ -type f -name "*.txt" # 현재 경로에서 .txt로 끝나는 파일 검색
- history / 명령어 기록 출력하기
- history # 지금까지 사용한 명령어 출력
- htop / 리소스 사용량 확인하기
- htop # 현재 사용중인 리소스 확인하기
- df / 남은 디스크 용량 확인하기
- df -h # 디스크 여유 공간 확인하기
- du / 특정 파일 혹은 폴더가 사용중인 디스크 용량 확인하기
- du -sh ./* # 현재 경로의 파일 및 디렉토리가 차지하는 용량 확인하기
'Docker' 카테고리의 다른 글
Dockerfile 이미지 빌드하기 (2) | 2023.06.01 |
---|---|
Docker volume (4) | 2023.06.01 |
Docker compose, port forwarding (2) | 2023.05.31 |
Docker 설치 및 docker container (2) | 2023.05.31 |
Linux Ubuntu 환경 구성하기 (1) | 2023.05.31 |