본문 바로가기

programming study/CLI

[코드잇] 유닉스 커맨드 라인 (1) (2021.2.27)

 

본 내용은 해당 강의 토대로 작성

 

CLI 환경과 유닉스

01. CLI 환경이란

운영체제

  • Windows, Android, macOS, iOS, ubuntu, UNIX, Red Hat 등
  • 기기에서 프로그램이 실행될 수 있도록 도와주는 역할
  • 운영체제를 다루기 위해 command(명령어)를 알 필요가 있다.

UNIX

  • 많은 운영체제들이 유닉스로부터 발전되어 왔다.
    • ubuntu, Red Hat, Chrome OS, Adroid, iOS, macOS, Linux
    • command도 거의 동일
    • 20 ~ 30개의 command면 실무에서도 충분

02. 유닉스(Unix-certified)와 유사 유닉스(Unix-like)

유닉스(Unix-certified)

  • 인증받은 운영체제들
  • 유닉스 자체는 1970년 초, 미국 벨 연구소에서 개발 (by 켄 톰슨, 데니스 리치)
  • 대부분 C언어로 작성
  • 다른 컴퓨터에 수정해서 적용하기 쉬움
  • 다양한 버전의 유닉스가 만들어 짐
    • POSIX: Unix라면 갖춰야 할 규격과 기능

유사 유닉스(Unix-like)

  • Unix의 코드를 한 줄도 사용하지 않고 만든 Unix와 유사한 운영 체제
  • 자유 소프트웨어 재단에서 개발
  • 쉬운 사용, 쉬운 변형
  • GNU(Gnu is Not Unix)/Linux
    • Linux kernel: 운영체제의 핵심부분, 리누스 토발즈가 완성
    • 무료 배포
  • Linux 배포판: ubuntu, Red Hat, CentOS
  • POSIX를 거의 만족

03. GUI와 CLI

GUI

  • Graphical User Interface
  • 그래픽을 활용한 환경

CLI

  • Command Line Interface
  • 키보드를 커맨드를 입력해서 사용하는 방식
  • 장점
    • 빠른 성능
    • 명확성
    • 단순하고 정확하게 컴퓨터를 사용할 수 있다.

04. terminal

  • CLI 환경으로 컴퓨터를 사용할 수 있게하는 프로그램

몇 가지 명령어

clear : 화면 정리하기

date : 현재 년, 월, 일, 요일, 시, 분, 초를 출력

cal : 달력 출력

05. 옵션과 인자

  • 옵션 또는 인자를 사용함으로서, 커맨드를 원하는 대로 사용할 수 있다.
  • 인자와 옵션은 정해진 방식에 맞춰서 사용한다.

옵션 (option)

  • 커맨드의 구체적인 동작 방식 지정
  • 값(인자)를 주는 경우도 있다.

cal -y : 올해의 모든 달력 출력

cal -B 값: 값만큼 전의 달력도 함께 출력

cal -A 값: 값만큼 후의 달력도 함께 출력

cal -j: 모든 날짜를 1월 1일을 기준으로 몇 번째 날짜인지 표기

인자 (argument)

  • 커맨드의 동작 대상 지정

cal 년도 : 해당 년도의 달력을 출력

cal 월 년도 : 해당 년도, 월의 달력을 출력

06. 옵션에 관해 알아야할 내용

  • 옵션은 값을 줘야하는 옵션, 주지 않아야 하는 옵션이 있다.

  • 옵션은 여러개를 쓰는 것도 가능하다.

cal -B 2 -A 3

현재 달로부터 2달 전, 3달 후까지의 달력들이 모두 출력

  • 여러 옵션을 동시에 쓸 때는 하이픈(-) 뒤에 여러 옵션의 이름을 써도 된다.
    • 단, 값을 안주는 옵션과 줘야하는 옵션을 같이 쓸 경우, 값을 줘야하는 옵션을 더 뒤에 써야 한다.
cal -B 2 -jA 3

07. 커맨드의 사용법

  • 커맨드에 대한 공식 메뉴얼을 본다.

man 궁금한 커맨드 : 해당 커맨드의 공식 메뉴얼을 볼 수 있다.

  • 방향키로 위 아래 이동이 가능
  • space: 한 페이지 아래로 이동
  • b: 위로 이동
  • q: 나가기

08. 메뉴얼의 항목

  1. 섹션, 메뉴얼 이름
  2. NAME: 커맨드의 이름과 커맨드에 대한 간단한 설명
  3. SYNOPSIS: 어떻게 커맨드를 실행할 수 있는지, 사용 가능한 형식(인자, 옵션들의 조합)을 보여준다.
  4. DESCRIPTION: 커맨드에 대한 더 자세한 설명과 각 옵션에 대한 설명

Comment

맨날 cd, clear 만쓰다가 cal이라는 명령어를 보니 신선하다…