쉘에서 사용하는 변수로 $ 문자를 사용하여 그 값을 설정합니다. 쉘 변수는 대소문자를 구분하며 쉘에서 쌍따음표를 상ㅇ하면 그 안의 스트링을 쉘이 해석합니다. 단 따음표는 그 내부를 해석하지 않습니다.
모든 변수들의 값을 확인하려면 'set'을 사용하고 변수를 삭제하려면 'unset'을 사용합니다.
이렇게 $shell 이라는 부분이 /bin/bash 로 바뀌어 있습니다. 이렇게 정의한 적은 없지만 default로 이렇게 정의되어 있는 것입니다.
리눅스의 주요 변수
HOSTNAME
호스트 컴퓨터의 이름
USER
현재 사용자의 이름
UID
현재 사용자의 사용자 식별 번호(User IDentifier)
SHELL
현재 사용중인 셀
HOME
현재 사용자의 홈 디렉토리
PS1
쉘 프롬프트 형태를 지정
-$echo $ps1, $PS1 = 'next command>'
PATH
쉘 명령에 해당하는 프로그램을 찾는 디렉토리의 순서
$echo $PATH
/usr/local/sbbin:/usr/local/bin:/sbin/bin:/usr/sbin/
$ echo $PS1
변수 사용
export
주어진 변수를 자식 쉘에 전달되도록 설정
env
인자가 없으면 export된 변수들을 보여줍니다. 명령을 인자로 주면 주어진 환경을 실행하며 env-i는 export된 것들을 모두 취소합니다.
변수를 명확하게 구분해서 나타내려면 ${변수명} 형식으로 나타냅니다. 정의되지 않은 변수를 접근하면 아무것도 출력되지 않습니다.
이때 에러 메세지를 발생시키려면 set-u를 사용하면 됩니다.
해당 변수명이 정해진 적이 없기 때문에 아무것도 출력되지 않은 것을 볼 수 있습니다. 만약 변수명을 명확하게 구분하고 싶다면 {}를 넣어줍니다.
'IT 프로그래밍 > 오픈소스소프트웨어' 카테고리의 다른 글
표준입출력 (0) | 2024.09.25 |
---|---|
[오픈소스소프트웨어] 쉘 임베딩 (0) | 2024.09.25 |
쉘 확장 (0) | 2024.09.20 |
Linux 파일 (0) | 2024.09.19 |
리눅스 ls 명령, 디렉토리 추가 및 삭제 명령 (0) | 2024.09.13 |