용기러기's Coding World

# 2020/08/04 - TIL : 리눅스 기초 명령어 본문

용기러기's TIL

# 2020/08/04 - TIL : 리눅스 기초 명령어

yongkis 2020. 8. 4. 22:20

1) 리눅스 기초 명령어

CLI (Command Line Interface) & GUI(Graphic User Interface)

우리는 어렸을 때부터 편한(?) GUI에 익숙해져서

CLI가 낯설지만 본래 컴퓨터는 CLI로 나왔고, GUI가 편의를 위해 새로 보급된 것!

 

그래서 CLI (리눅스에서 쓰는) 명령어들이

사실상 GUI에서 하던 것들을 명령어로 칠 뿐이라는 것!

 

- ls(List)명령어 : 옵션으로 -a, -l 등이 있고(a: all의 약자로 숨김파일까지 보여줌// l : list의 약자로 파일 생성일, 소유권 정보 등 자세한 정보를 같이 보여줌), GUI에서는 눈으로 뭐가 있는지 폴더를 옮겨가며 보면 되지만, CLI에서는 현재 자기가 있는 곳에 어떤 파일, 디렉터리가 있는지를 알려면 ls 명령어를 통해 확인 가능!

**참고로 ls -al or ls -la(순서는 상관 없음)식으로 옵션은 같이 써주면 됨

 

- cd(Change Directory) 명령어 : 마우스 커서를 통해서 폴더와 폴더, 파일과 파일 등을 옮겨다니는 GUI와 달리 CLI에서는 cd명령어를 통해 그 사이를(?) 돌아다닐 수 있다. 이 때, cd [경로] 식으로 명령어를 쓰는데, 경로는 절대경로와 상대경로가 있다.

절대 경로는 쉽게 말해, 완벽한 경로, 풀(?)경로를 써주는 것이다. 예를 들어, 루트 디렉터리(/) 안에 Users 안에 용기러기라는 디렉터리가 있을 때, 절대 경로를 써서 이동하려면 'cd /Users/용기러기' 이런식으로 써주면 된다. 

그러나, 상대 경로는 현재 자기가 속한 위치에 따라 결정된다. 예를 들어, 위의 용기러기 디렉터리로 이동하려 하는데, 현재 위치가 Users 라면 'cd 용기러기' 이렇게 바로 쳐줘도 된다. 즉, 기준이 현재 자신의 위치(Users)가 되고, 그 뒤부터 경로를 써주는 것이다. 

만약, 이동하고자 하는 디렉터리가 용기러기 디렉터리 내에 있는 용기러기2라는 디렉터리였다면?

'cd 용기러기/용기러기2' 라고 입력해야하는 것이다(상대경로의 경우). 

이 때, 현재 자신의 위치는 . 으로 표현되는데, 상대경로로 이동을 할 때는 자동적으로 cd ./용기러기  이런 식으로 현재 자신을 기준으로 시작하게 된다(.은 안써줘도 디폴트로 적용됨) 

이에 더하여, 자신의 위치에서 이전 디렉터리는 .. 으로 표시하며 뒤로가기 버튼과 같은 명령어는 'cd .. '이 된다.

 

*** 정리 ***

cd 명령어

- 상대 경로 => cd . / cd ../ cd ./용기러기/용기러기2 : 자신의 현 위치를 기준(시작점)으로 경로를 써주면 됨

- 절대 경로 => /(루트디렉터리)를 기준으로(항상 가장 위에 있는 최상위 디렉터리가 루트 디렉터리이므로) 이동하고자 하는 디렉터리의 위치까지의 경로를 모두 써줘야함!

               

- clear 명령어 : 프롬프트 혹은 터미널이 지저분해졌을 때 여태까지 코드들을 위로 밀고, 화면을 정리해줌

- pwd 명령어 : print working directory => 현재 위치를 리턴해줌

- CRUD 명령어

Create : 디렉터리 생성 : mkdir // 파일 생성 : touch

Read : 파일 조회 : cat or vi 에디터(수정도 가능) // 디렉터리 조회 : cd 명령어

Update : 파일 수정 : vi 에디터 

Delete : 파일 및 디렉터리 삭제 : rm -rf (확인 과정없이 지우기 때문에 쓰기전에 확실하게 지워도 되는지 생각하고 지우기)

- 복사 및 이동 : 

디렉터리 이동 : mv 명령어

파일 및 디렉터리 복사 : cp 명령어(디렉터리는 cp -r [디렉터리명]형태로 써줘야함)

- CLI에서 띄어쓰기 인식시키고자 할 때는 \를 붙여줘야함 ex) My\ little\ TV

- tab 키 : 자동완성

- sudo : 관리자 권한으로 명령어 실행

- chmod & chown : 소유권 변경

- code 명령어 : 현재 위치해있는 혹은 타이핑한 경로에 대해서 vsCode로 open

- open 명령어 : GUI환경으로 열어줌(현재 경로를)

- HomeBrew : 맥북의 패키지 매니저