[Linux] 명령어 입력해서 컴퓨터 조작하기

jeong dain·2022년 4월 20일
0

리눅스 터미널을 실행하는 방법 (macOS)

  1. 모니터 화면 상단의 상태바에서 돋보기모양을 클릭하여 스포트라이트를 실행한다.
    • 단축키 : command + space
  2. Terminal / 터미널 을 입력하고 Enter 키를 누르거나, 화면에 나타난 프로그램을 클릭한다.
  3. 프롬포트(Prompt) 에 명령어를 입력하여 조작한다.

컴퓨터를 조작하는 두가지 인터페이스 CLI, GUI


GUI(Graphical User Interface) : 입출력 등의 기능을 알기 쉬운 아이콘과 같은 그래픽으로 나타내어 사용자와 컴퓨터가 편리하게 정보를 교환할 수 있도록 하는 방식

GUI(Graphical User Interface)를 이용하여 새로운 폴더를 만들기

  1. 폴더가 생성되기를 원하는 화면 위치에 커서를 두고 오른쪽 마우스를 클릭
  2. 컨텍스트 메뉴에서 새로운 폴더를 눌러 생성
  3. 다시 폴더 위에 커서를 올린뒤 오른쪽 마우스를 클릭해서 뜨는 컨텍스트 메뉴에 이름 바꾸기를 클릭
  4. 폴더의 이름 부분이 수정이 가능함을 나타내는 표시로 바뀌면 원하는 이름을 타이핑 한 뒤 엔터를 누르거나 다른 곳을 클릭해서 변경사항을 저장

CLI(Command-Line Interface) : 사용자가 가상 터미널 또는 텍스트 터미널을 통해 컴퓨터와 상호 작용하는 방식

CLI(Command-Line Interface를 이용하여 새로운 폴더를 만들어 보자.

  1. 터미널을 연다
  2. 터미널 창에 mkdir forder_name 라는 코드 한 줄을 입력한다

끝-!!

이제껏 개발자하면 제일 먼저 떠올렸던 검은화면에 알수없는 코드들로 가득찬 화면은 바로 터미널이었다. 이 터미널을 조작하기 위해선 CLI(Command-Line Interface)가 필요한데 왜 CLI(Command-Line Interface)를 이용하여 컴퓨터를 조작하는 걸까?

우선 CLI 는 GUI 가 개발되기 이전부터 개발자들이 컴퓨터를 조작하기 위해 사용해 왔던 방식이다. 그리고 그래픽으로 화면을 이루는 GUI 와 달리 글자만 출력되는 CLI 는 대량의 서버 컴퓨터를 컨트롤하는데 최적화되어있기 때문이다. 모든 컴퓨터에 모니터와 키보드, 마우스를 설치할 수는 없으니 CLI 를 이용해 서버 컴퓨터에 접속을 요청하면 서버 컴퓨터가 요청 컴퓨터의 모니터에 출력소스를 이용하는 방식으로 컴퓨터와 소통하는 것이다. 그래서 GUI 로 할 수 있는 모든 작업은 CLI 로 작업이 가능하며 두가지 작업방식 중 어느 방식으로 컴퓨터를 조작 하더라도 컴퓨터에 저장된 정보와 변경된 사항을 동일하게 확인할 수 있다.

리눅스 터미널에서 사용하는 기본적인 명령어


pwd: print working directory 의 약자로, 현재 위치를 확인하는 명령어

mkdir: 새로운 폴더를 생성하는 명령어

  • make directories 의 약자로, 폴더를 만들라는 명령을 컴퓨터에 전달한다. 명령어 mkdir은 생성할 폴더의 이름을 함께 입력해야하는데, CLI 에서는 명령어와 폴더의 이름을 Space(스페이스 키)로 구분한다.
  • 폴더의 이름에 공백이나 특수문자가 있을 경우 백슬래시()를 앞에 오게 한다.

ls: 폴더나 파일의 목록을 출력하는 명령어

  • list 의 약자로, 특정 폴더에 포함된 파일이나 하위 폴더의 리스트를 출력한다.
    • ls -a : 숨어 있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력
    • ls -l : 폴더나 파일의 포맷을 전부 표현
    • ls -al(또는 la) : 숨어 있는 폴더나 파일을 포함한 모든 항목과 포맷을 표현

nautilus (Ubuntu), open (macOS): 현재 폴더를 파일 탐색기로 여는 명령어

cd: 폴더에 진입하는 명령어

  • change directory 의 약자로, 프롬프트로 상호작용하는 폴더를 다른 폴더로 변경한다는 의미

touch: 새로운 파일을 생성하는 명령어

cat: concatenate 의 약자로, 파일의 내용을 터미널에 출력하는 명령어

rm: 폴더나 파일을 삭제하는 명령어

  • rm -rf : recursiveforce 의 약자로, r 은 폴더를 지울 때 사용하고, f 는 질문을 받지 않고 지울 때 사용
  • Rm -rf ./ : 절대 금지..!!!!

mv: 폴더나 파일의 위치를 이동하거나, 이름을 변경하는 명령어

  • mv bye.txt bye/ : bye.txt 파일을 bye 폴더로 이동
  • mv bye.txt helloWorld.txt : bye.txt 파일의 이름을 helloWorld.txt 로 변경

cp: copy 의 약자로, 폴더나 파일을 복사하는 명령어

  • cp helloWorld.txt hiComputer.txt : helloWorld.txt 파일의 내용을 복사하여 hiComputer.txt 파일을 생성하고 내용을 붙여넣음
  • 폴더를 복사할 경우 반드시 -r 를 포함

sudo: 관리자 권한을 획득

  • 사용자 권한을 벗어난 위치에 새로운 폴더나 파일을 생성할 경우 관리자 권한이 필요

명령어를 사용할 때, 등장하는 키워드의 종류

  • /: 루트 디렉토리
    • ../ : 상위 폴더로 이동하기 위한 상대경로
    • / : 폴더를 의미. 마지막 폴더의 슬래시는 생략 가능
  • ~: 홈 디렉토리
  • 폴더 이동 실행해 보기

절대 경로와 상대 경로의 차이

  • 절대 경로의 시작이 루트 디렉토리(/)
  • 상대 경로의 시작이 현재 디렉토리(.)

리눅스 권한(Permission)

drwxr-xr-x
  • 'r'은 read의 약자로 읽기 권한을 의미. 파일 및 폴더안에 있는 데이터, 속성, 서브 폴더 등에 접근이 가능
  • 'w'는 write의 약자로 쓰기 권한을 의미. 파일 및 폴더의 속성과 데이터를 변경.
  • 'x'는 execute의 약자로 실행 권한을 의미. 해당 파일을 실행하여 사용.
  • '-'는 권한 없음을 의미.

명령어 옵션 -r 과 -f

  • recursiveforce 의 약자로, r폴더를 지울 때 사용하고, f질문을 받지 않고 지울 때 사용
  • Rm -rf ./ 절대 금지..!!!!(폴더나 파일 모두 삭제됨)
profile
Web Frontend Developer #TypeScript #React #NextJS🤸‍♀️

0개의 댓글

관련 채용 정보