변수
Linux에서 변수는 특정한 값(value)를 넣는 그릇이라고 생각하면 쉽습니다.
변수 선언
변수는 아래와 같이 선언할 수 있습니다.
| [변수명]=[값] |
예를 들어 name이라는 변수명에 apple이라는 값을 넣어 본다면
아래와 같이 만들 수 있습니다.
$ name=apple
= 사이에 공백이 들어가면 제대로된 변수 선언이 되지 않을 수 있으므로 꼭! 공백(띄어쓰기) 없이 사용해 주세요
만약 변수가 미리 있다면 = 기준 우측에 있는 값이 덮어씌워 지게 됩니다. 원래 변수에 있던 값은 사라지게 됩니다.
변수 이름을 이용한 변수 확인 명령어
$ echo $[변수명]
$ echo $name
name변수를 실행하면 apple이라는 값이 출력됩니다.
변수명으로 변수 확인을 할 때에는 꼭 변수명 앞에 $기호를 입력해줘야 합니다.
선언된 변수 확인 명령어
$ set
선언된 변수들을 확인하는 명령어로 여러 변수가 출력 될 수 있습니다.
그래서 내가 원하는 변수 출력을 위해 아래 명령을 입력 해줍니다.
$ set | grep [변수명]
변수 제거 명령어
$ unset [변수명]
이때는 순수 변수명만 입력해야 합니다.
-이때까지는 변수에 대한 내용이였고 지금부터 할 내용은 환경변수에 관한 얘기입니다.
환경변수
환경변수는 동작되는 프로그램에 직접적으로 영향을 주는 변수입니다.
환경변수 선언 명령어
환경변수와 일반 변수를 구분짓기 위해 환경변수는 대문자로 입력해 줍니다.
$ export [변수명]=[값]
환경변수 확인 명령어
$ echo $[변수명]
선언된 환경변수 확인 명령어
$ env
이 또한 선언된 환경변수들이 여러개 출력 될 수 있습니다.
특정 환경변수를 찾고 싶으면 아래 명령어를 입력할 수 있습니다.
$ env | grep [변수명]
환경변수의 종류
| $PATH | 명령어를 탐색 경로 |
| $HOME | 홈 디렉토리 경로 |
| $USER | 로그인 사용자 이름 |
| $SHELL | 로그인 Shell 이름 |
위에서 환경변수는 프로그램에 영향을 주는 변수라고 했습니다.
왜 영향을 주는 지 예시를 들어 봅시다.
$PATH
data라는 명령어는 /bin/data의 줄임말입니다. data라는 명령어를 실행하기 위해 $PATH라는 환경변수의 값인 각 경로에서 data를 찾아 실행 하는 것입니다. 아래 경로는 $PATH 환경변수 값입니다.

만약 이 값을 지우거나 변경하게 된다면 어떻게 될까요?
$ PATH=
위 명령어를 실행 하고 다시 data 명령어를 실행 했을 경우

파일 또는 디렉토리를 찾을 수 없다는 오류가 뜨면서 실행이 되지 않습니다.
이 처럼 환경변수는 매우 중요한 변수입니다.
$HOME
홈 디렉토리입니다.
$ cd
위 명령어는 홈 디렉토리로 이동하는 명령어 입니다. 만약 이 $HOME 환경변수도 값을 변경하는 경우
홈디렉토리가 아닌 다른 경로로 이동하거나 그 외의 문제가 발생하게 됩니다.
$USER
현재 로그인한 사용자 이름이 담겨 있습니다.
$SHELL
현재 사용하는 shell의 경로 값이 입력되어있습니다.
| 리눅스의 모든 것을 배울 때까지 공부해봅시다. |

'Linux > Shell Programming' 카테고리의 다른 글
| 05.[Linux] 쉘(shell) Positional Parameters 란? (1) | 2023.01.31 |
|---|---|
| 04.[Linux] 쉘(shell) Script 란? (0) | 2023.01.20 |
| 03.[Linux] 쉘(shell)과 Rules 2 (0) | 2023.01.19 |
| 02.[Linux] 쉘(shell)과 규칙들 1 (0) | 2023.01.19 |
| 00.[Linux] 쉘(shell) 이란? (1) | 2023.01.17 |