07_Simple Coding - Linux - bash

강태경·2024년 2월 18일

Linux

목록 보기
8/9

📃 요약

리눅스는 윈도우와 달리 주로 키보드를 이용해서 명령어를 타이핑해서 여러가지 기능들을 실행함
예를 들어 대표적으로 폴더 만들기, 파일만들기 명령어 등이 있음

요소 기술 :

- Basic : 리눅스

📃 기술 구현

스펙 :

- docker desktop
- linux

📃 Linux 란

- 리눅스 : 운영체제 (윈도우 같은 것, OS)
- 컴퓨터의 하드웨어(cpu , 메모리 , 프린터 , 키보드 등) 관리하는 s/w
- 무료 리눅스 / 유료 리눅스가 있음
    1) 무료 리눅스 : 우분투, 센토스 등
    2) 유료 리눅스 : 레드헷 등

Linux 사용 목적

- 업무용 OS(운영체제) : 안정성 높음
- 안정성 : 업무용 S/W 는 1년 무중단으로 프로그램이 실행되어야 함
- 윈도우는 1년 무중단으로 실행시 리눅스보다 컴퓨터가 꺼지거나 에러가 발생할 위험이 높음

Linux 특징

- CLI(Command Line Interface) : 명령어를 입력해서 실행하는 프로그램
- GUI(Graphic User Interface) : 마우스를 이용해 실행하는 프로그램(한글, 워드 등)

리눅스의 파일/디렉토리 알기

1) 리눅스의 모든 하드웨어 장치(프린터,디스크 등)는 모두 파일로 이루어져 있음
2) 디렉토리 == 폴더
3) 디렉토리 구조
(1) PATH(경로) : /(슬래쉬) 를 사용해서 디렉토리 경로를 표시함
    예) /usr/bin/perl -> /usr 디렉토리 안에 /bin 디렉토리 안에 perl 파일(vs 윈도우즈( \(역슬래쉬)))
(2) 리눅스의 최상위 경로 : / => root(뿌리) 경로, 1개만 있음
(3) 리눅스 설치시 여러 의미 있는 디렉토리가 있음
(4) /bin : 명령어 실행 파일이 존재하는 디렉토리
           중요도가 높은 명령어 들이 있음
    /etc : 리눅스에서 실행되는 다양한 환경 설정 파일이 존재 (패스워드, 그룹정보 등)
   /home : 사용자별로 할당(배정)되는 작업 디렉토리
   /sbin : 관리자용 명령어들이 포함된 디렉토리(서버끄기/켜기 등)
   /tmp  : 프로그램 실행시 임시 파일이 필요한데 그 파일이 들어 있는 디렉토리(주기적으로 리눅스가 삭제함)
   /usr  : 설치한 프로그램이 들어 있는 디렉토리(oracle, 웹서버 프로그램 등)
   /var  : 변화하는(Variable) 파일/데이터를 저장하기 위한 디렉토리 (메일, 로그 등)

1) bash

bash : 쉘 명령 환경, 윈도우 바탕화면 테마와 비슷
기타 쉘환경 : sh(과거, 본셀), csh 등
쉘 명령어 익히기 : bash 쉘 기준으로 실습함

2) 셀 변수

셀 변수에 문자나 숫자를 저장할 수 있음
셀 변수 양옆에는(=) 공백을 넣으면 안됨
사용법)
쉘변수 저장 : 쉘변수명='문자열'
쉘변수 사용 : $쉘변수명
예제 2) var1 쉘변수에 'test variable' 문자열을 넣고
echo 명령어로 화면에 출력해 보세요
oracle@731130ee71d4:~$ var1='test variable'
oracle@731130ee71d4:~$ echo $var1
test variable
oracle@731130ee71d4:~$

3) var2 쉘변수에 'hello world' 넣고

쉘변수를(환경변수) 사용해서 화면 출력해 보세요
oracle@731130ee71d4:~$ var2='hello world'
oracle@731130ee71d4:~$ echo $var2
hello world

4) PS1 : 프롬프트 설명

프롬프트 : 명령어 앞에 표시된 $, # 을 프롬프트라고 함
root 계정의(최고관리자) 프롬프트 :
일반 계정이 프롬프트 : $
bash 쉘의 프롬프트 설명
oracle@731130ee71d4:~$

5) PATH 쉘변수 : 명령어를 찾는 경로

미리 PATH 변수 명령어 전체 경로를 등록해 놓으면
경로를 입력않하고 명령어만으로 실행할 수 있음
여러 경로를 등록할때 구분자 - :(콜론)
(참고) 여러 경로 등록 (윈도우) - ;(세미콜론)
밑에 경로 분석
/usr/local/sbin (1개), /usr/local/bin(1개) ...
oracle@731130ee71d4:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
oracle@731130ee71d4:~$

6) LANG 쉘변수: 로케일, 언어셋

현재 시스템의 설치된 언어셋 보기 명령어
사용법) locale -a : 지원하는 언어셋(설치된 언어셋) 보기
한국어로 변경하기
LANG=ko_KR.utf8 실행 : 한국어로 변경됨
oracle@731130ee71d4:~$ LANG=ko_KR.utf8
oracle@731130ee71d4:~$ fdsafd
-bash: fdsafd: 명령어를 찾을 수 없음
다시 영어로 변경
LANG=C
oracle@731130ee71d4:~$ LANG=C
oracle@731130ee71d4:~$ fdsafdsa
-bash: fdsafdsa: command not found
oracle@731130ee71d4:~$
배쉬 개인 설정 파일
문제점) 셀에 설정한 변수 사라짐
리눅스에는 로그인시 개인 설정파일을 읽어들임
셀변수 등은 개인 설정 파일에 작성해야 유지됨
개인 설정 파일
/etc/profile : 시스템 전체에 셀변수 적용하는 파일
~/.profile : 사용자별 개인 설정 파일(숨김 파일)
, 로그인할때 1번만 읽음
~/.bashrc : 사용자별 개인 설정 파일(숨김 파일)
, 배쉬가 실행될때마다 읽음
셀 주석 : # (주석문)
profile
IT FullStack 강사

0개의 댓글