리눅스 명령어 (기초)
by AMAD
개발 공부중 터미널에 명령어를 입력해서 패키지를 다운 받고 경로를 설정해주고... 등등
터미널을 사용하여 개발에 필요한 환경설정등을 해주는 게 많다는걸 알게되었다.
그래서 오늘은 터미널에 대해 공부해 보려고 한다.
먼저 터미널이란, 컴퓨터와 사용자 간 소통을 위한 인터페이스 를 말한다.
코딩을 접해보기 전 영화 같은 곳에서 개발자들이 검정화면에 코드 같은 무언가를 입력하는 걸
본적이 있는데 그게 바로 터미널이다.

(나는 흰색 바탕에 검은색 글씨를 사용중이다.)
서론이 조금 길었고 바로 본론으로 들어가 명령어들을 공부해보겠다!
터미널 사용하기
우선 터미널을 실행하는 방법이다. 터미널은 운영체제에 기본적으로 설치되어 있기 때문에 따로 설치할 필요가 없는데, command + space를 누르고 ‘터미널’(한국어 버전이 아니라면 terminal)이라고 입력하면 실행할 수 있다.
탐색하기
- ls : 현재 경로에 존재하는 파일/폴더 확인하기
ls는 list의 약자로, 현재 자신의 위치에 있는 파일과 폴더들을 확인하는 명령어이다.
아래의 이미지처럼 ls을 입력하고 엔터를 누르면, 해당 경로에 존재하는 여러 파일과 폴더들의
이름이 나타나는 것을 확인할 수 있다.
- pwd : 현재 위치한 경로 출력하기
pwd는 print working directory의 약자로, 현재 어떤 경로의 디렉토리에 있는지 출력해주는 명령어이다. 아래 입력한 화면을 보면 최상위 디렉토리의 Users라는 디렉토리의 jieun라는 디렉토리가 현재 경로인 것을 확인할 수 있다. - cd : 디렉토리 이동하기
cd는 change directory의 약자로, 경로를 이동할 때 사용하는 명령어이다. 위에서 ls 명령어를 사용했을 때 나타났던 여러 폴더와 파일 중에서, Documents 폴더로 이동해보겠다. cd Documents을 입력하면 현재 경로가 명령어 입력하는 곳에 나타나고 pwd를 입력했을 때 현재 경로가 수정된 것을 확인할 수 있다.
만약 폴더 밖으로(이전, 뒤로가기) 이동하고 싶다면 cd 뒤에 ..을 입력하면 된다!
파일/폴더 관리하기
- touch : 파일 생성하기
touch는 파일을 생성하는 명령어이다. touch 뒤에 파일명을 적으면 되는데, AMAD.text 파일을 만들어보았다. ls 명령어를 통해 파일이 잘 생성된 것도 확인할 수 있다. - mkdir : 폴더 생성하기
mkdir은 make directory의 약자로, 새로운 폴더를 생성하는 명령어이다. AMAD라는 폴더를 만들었는데, ls 명령어로 확인해보니 역시 잘 생성 된 걸 볼 수 있다. - cat : 파일 확인하기
cat은 concatenate의 약자로, 파일의 내용을 확인하는 명령어이다. 임시로 AMAD2.text라는 파일을 만들어두었는데, cat AMAD2.text를 입력하니 파일의 내용이 출력되는 것을 확인 할 수 있다. - rm : 파일 삭제하기
rm은 remove의 약자로, 파일을 삭제하는 명령어이다. 한 번 AMAD.text 파일을 삭제해 보겠다.
삭제한 이후 ls 명령어를 실행하면, AMAD.text 파일이 사라진 것을 확인할 수 있다. - rmdir : 폴더 삭제하기
rmdir은 remove directory의 약자로, 폴더를 삭제하는 명령어이다.
AMAD 폴더를 삭제해 보겠다. - rm -r : 파일을 갖고 있는 폴더 삭제하기
rmdir 명령어로 삭제한 AMAD폴더는 내부에 파일이 없던 빈 폴더였는데, 내부에 파일이 있는 폴더라면 어떻게 될까? 확인해보기 위해, 위에서 배운 명령어를 사용하여 AMAD2라는 폴더를 다시 만들고 내부에 다시 amad.text, amad2.text 파일을 만들어보았다.
그리고 다시 rmdir로 AMAD2 폴더를 삭제해 보았다. 그러면 rmdir: AMAD2: Directory not empty라는 에러가 출력된다. rmdir은 내부에 파일이 없을 때만 실행 가능한 명령어이다.
폴더에 진입해서 내부의 파일을 다 삭제한 후에 rmdir을 실행해도 되지만 그러기엔 폴더 구조가 복잡하면 너무 번거로울수 있다. 그런 경우 rm -r 명령어를 사용하면 된다! 마이너스 표시를 붙이는 것은 옵션을 뜻하는데, recursive를 뜻하는 r 옵션과 함께 rm 명령어를 실행하면 내부의 파일까지 같이 제거가 된다. - cp : 파일/폴더 복사하기
cp는 copy의 약자로, 폴더/파일을 복사하는 명령어이다. cp 뒤에 복사할 파일/폴더와 원하는 경로/이름을 입력하면 되는데, AMAD2.text를 AMAD3.text로 복사해보았다.
물론 파일에 있는 내용까지 복사가 되는 것을 확인 할 수 있다. - mv : 파일/폴더 이동시키기, 이름 변경하기
mv는 move의 약자로, 파일이나 폴더를 이동시키는 명령어이다. AMAD라는 폴더를 만들고 AMAD3.text 파일을 해당 폴더로 이동시켜보겠다. mv 명령어 뒤에 이동시킬 파일과 이동시킬 디렉토리를 순서대로 입력하면 된다!
그런데 mv 명령어를 통해서 파일 이름을 변경할 수도 있다. mv 뒤에 첫 번째로 파일 이름을 입력하고 두 번째로 (폴더가 아니라) 변경할 파일 이름을 입력하면 되는데, AMAD2.text를 AMAD_change.text로 변경시켜보겠다.
- 기타 유용한 명령어
이외에도 다양한 명령어가 있는데, 몇 가지만 추가로 살펴보겠다.
- clear : 터미널 정리하기
clear는 터미널을 정리해주는 명령어이다. ls와 같은 명령어를 입력하다 보면, 터미널 화면이 길어지고 지저분해 보이기도 하는데, 그때 clear 명령어를 입력하면 터미널 창이 처음 열었을 때처럼 깨끗해지는 것을 확인할 수 있다. - history : 이전에 사용한 명령어 확인하기
history는 이전에 사용한 명령어들을 확인할 수 있는 명령어이다. history를 입력하고 엔터를 누르면
번호와 명령어가 쭉 나열되는데,
여기서 느낌표와 번호를 입력하면, 해당 번호에 맞는 명령어를 사용할 수 있다.
요약: 개발자라면 터미널 명령어 공부는 필수! 외울 필요까진 없지만 이런게 있다는 것 정도는 알고 있기!
기억이 나지 않을때는? 역시나 구글링~ 구글신은 모든 걸 알고계셔!
'CS' 카테고리의 다른 글
시간복잡도 (Big-O 표기법) (2) | 2023.01.14 |
---|---|
HTTP - status code (0) | 2022.12.06 |
positon 속성 - relative, absolute, fixed (0) | 2022.11.30 |
semantic web과 semantic tag란? (0) | 2022.11.29 |
아스키 코드와 유니 코드 (0) | 2022.11.27 |
블로그의 정보
성장 하고 싶은 개발자
AMAD