본문 바로가기
UNIX 프로그래밍

[1주차 개념] UNIX 사용법 (+ LINUX와 차이점)

by 서영선 2023. 9. 7.

 

 

이번 학기에 수강중인 UNIX 프로그래밍 수업을 기록하며 공부해보려 한다! 😎

 

 

MacOS에서는 자체 기본 내장 응용프로그램으로 리눅스나 유닉스 플랫폼 서버환경으로 Telnet, SSH를 사용할 수 있지만,

Windows 에서는 별도의 프로그램(Putty 등) 도움을 받아 사용이 가능하다.

 

 

 

 

 


 

🚩 기본 UNIX 명령어와 vi 에디터의 기초 사용법

 

 

1.  vi 에디터란?

 

  • 최초의 유닉스용 화면 편집기
  • 작고, 빠르고, 모든 유닉스/ 리눅스 시스템이 기본적으로 갖추고 있는 편집기
  • 몇 가지 기본적인 기능만을 갖추고 있으나, 유닉스의 다른 명령들과 결합하여 매우 다양하게 확장, 응용이 가능
  • 독특사지만 매우 빠르고 강력한 명령 체계

 

 

 

 

2.  vi 의 작동 모드

  • 명령 모드: vi 를 시작하면 기본적으로 들어가는 모드로, 텍스트 편집에 필요한 여러 명령들을 입력하는 모드 ( 화면 하단에 표시 없음)
  • 편집 모드: 텍스트를 입력 및 수정하는 모드  ( 화면 하단에 "끼워넣기" 표시) 
  • ex 모드: 주로 외부 파일이나 확장 명령을 사용하기 위한 모드로, 편집 종료도 ex 모드에서 실행 (화면 하단에 : 표시)

 

✔ 명령 모드 → 편집 모드 : i (커서 마지막 줄), a (커서 마지막 다음줄) 등의 명령어 사용

✔ 편집 모드 → 명령 모드 : <ESC> 명령 사용

✔ 명령 모드 → ex 모드 : 명령 사용

✔ ex 모드 → 명령 모드 : ex 모드의 명령 사용 후 자동 전환 또는 <ESC> 명령 사용

 

※ 편집 모드와 ex 모드 간의 전환은 불가

 

 

 

 

 

 

3.  vi 에디터 사용법

$ vi myfile.c                                      # myfile 파일 시작하기
$ gcc source.c                                 # a.out 이라는 이름으로 컴파일
$ gcc source.c -o destination           # destination이라는 이름으로 컴파일 
$ ./a.out                                            # a.out 실행 파일이 콘솔창에서 실행
$ ls                                                   # 현 directory 내에 존재하는 모든 subdirectory 및 file 들을 listing 함
$ ls -l                                                # 각 subdirectory 및 file 에 관한 상세 정보를 함께 표시하는 명령
$ cat filename                                  # 해당 file의 내용을 화면에 출력
$ cp file1 file2                                  # file1의 내용을 복사하여 file2를 생성
$ mv file1 file2                                 # file1의 이름을 file2로 변경
$ mv file1 dir1                                  # file1을 dir1로 이동
$ rm filename                                  # 해당 file 삭제 
$ mkdir dirname                              # 해당하는 이름의 directory를 생성
$ cd dirname                                   # 해당 directory로 이동
$ chmod 700 filename (or dirname)   # 해당 file 또는 directory의 access permission 변경 

 

 

 

 

 

 

 

 

 

 ++ 추가 ++

 

 

유닉스와 리눅스의 차이점이 궁금해서 찾아보았다.

 

 

리눅스는 유닉스에서 분리되어 생성된 것이다.

 

유닉스(UNIX)는 인터넷 서버, 워크 스테이션, Solaris, INTEL, HP, APPLE에서 주로 사용하는 OS이다.

리눅스(LINUX)는 오픈소스 무료 OS로, 컴퓨터 하드웨어, 소프트웨어, 게임 개발, 태블릿에서 주로 사용하는 OS이다.

 

 

 

 

< 유닉스 vs 리눅스 >

  유닉스 (UNIX)  리눅스 (LINUX)
주 사용처 유닉스는 대학교, 대기업, 금융 인프라에서 주로 선호하는 OS 이다 리눅스는 모바일 폰, 태블릿, 하드웨어, 소프트웨어 등 널리 사용되는 OS이다
출시 1969년, BELL 연구소의 AT&T 직원들과 데니스 리치에 의해 개발되었다.
유닉스는 C언어로 작성되었으며, 휴대용 제품, 시분할 환경의 다중 작업과 다중 사용자 시스템을 위해 설계되었다.
1992년 MINIX에 의해 영감을 받은 이루스 토발즈가 GUI, Drivers 등의 특성을 추가한 후에, 지금의 리눅스가 된 OS의 프레임워크를 개발하였다.
리눅스 커널은 1991년 9월 17일 출시되었다.
특징 대부분 유료이고, 초기의 유닉스는 커맨드 기반의 OS 였으나 이후에 GUI가 생성되어 공통 데스크탑 환경으로 불렀다. 대부분 무료이고, 오픈 소스로 개발되었기 때문에 위험 탐지와 해결이 매우 빠르다.
BASH는 리눅스의 기본 쉘이다.
예시  OS X(APPLE), Solaris Ubuntu, Fedora, Red Hat, Debian, Android, CentOS 등

 

 

 

 

< 리눅스 배포판 인기 순위 >

 

우분투만 써봤는데 리눅스 배포판 종류가 이렇게 많다니 놀라웠다....!

 

 

 

 

 

 

 

UNIX사용법(추가).pdf
1.17MB
Lect1.pdf
0.54MB
실습(9월5일).pdf
0.03MB

댓글