inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

시스템엔지니어가 알려주는 리눅스 실전편 Bash Shell Script

2-3. 웹 서버 트러블의 재발 방지를 위한 쉘 스크립트(2)

log_mon.sh의 HOST 변수

513

anat

작성한 질문수 21

0

안녕하세요 질문드립니다. 

먼저 telegram_example.sh의 코드입니다(선생님과 같습니다)

그리고 DIR, HOST변수 선언을 마친 log_mon.sh에서  

 ./log_mon.sh 실행 시, 

아래와 같이 []로 표시되고 hostname을 받아오지 못했는데요

log_mon.sh내 코드 중,  telegram_example.sh 쉘 스크립트를 실행하는 라인에서 ${HOST} 대신 ${HOSTNAME}로 변수를 불러오고 HOST 변수 선언 라인을 주석처리 하니, 아래와 같이 정상적으로 hostname [cent1]을 불러왔습니다. 

 

위 사진은  log_mon.sh 내 HOST 변수 선언 라인을 주석처리하고 ${HOSTNAME}로 호출 할 때 ./log_mon.sh 결과입니다

전체 코드와 출력결과 설명이 길었습니다,

제 질문은

log_mon.sh 내 hostname을 받아오는 HOST 변수를 주석처리하고 ${HOSTNAME}이라는 선언하지 않았던 변수를 호출했을 때 정상적으로 cent1을 출력했는데, 이 ${HOSTNAME}는 어딜 보고cent1을 받아온 걸까요?

linux shell-script

답변 3

0

그로스쿨

강병현님 안녕하세요.

강의자료는  $(hostname) 인데 실습해보신건 ${hostname} 인 것 같네요.
소괄호를 중괄호로 입력해서 이런 문제가 발생한것 같아요.
소괄호는 괄호안의 명령어를 실행한다는 의미이고 중괄호는 변수명으로 인식합니다.

HOSTNAME이라는 변수는 리눅스에서 기본으로 제공해주는 환경변수이기 때문에 사용할 수 있는 것입니다.

제가 log_mon.sh 스크립트에서 사용한 것은 hostname이라는 명령어를 실행해서 그 값을 가져오게 만드는 것이었어요.

hostname을 실행하면 echo ${HOSTNAME} 과 같은 결과를 가져오므로 어느 것을 사용하셔도 무방합니다.

0

강병현

log_mon.sh에 HOST 변수 선언을 할때 소문자가 아닌 대문자로 변경하면 정상 작동합니다.

HOST="${hostname}" (강의자료)

HOST="${HOSTNAME}" (수정)

0

그로스쿨

안녕하세요 아나더님! :)

열심히 해주고 계시네요!!!! 너무 기쁩니다 ㅠ

 

답변드릴게요!

HOSTNAME 을 사용할 수 있는 이유는 리눅스에서 기본으로 제공하는 변수이기 때문입니다. 
터미널에서 echo ${HOSTNAME} 을 입력해 보시면 등록한 hostname을 출력합니다. 

텔레그램 봇 메세지 전송기능을 여러 서버에 이용하려면

0

168

2

컨테이너에서 다른 컨테이너 접속시

0

126

2

실습 주소에 172.18.1.91를 접속하니 접속이 되지 않습니다

0

136

2

atlassian 접속이 안됩니다

0

210

2

docker 컨테이너로 가상환경 구축 시 init.sh 관련 에러 로그

0

254

2

백업 쉘스크립트 3 질문있어요

0

122

1

telegram 문자보내기 오류

0

227

1

2-2 초기 셋팅 질문드려요!

0

342

3

Linux top 커맨드에 대한 질문

0

158

1

2-0. 진행 후 웹사이트 접속이 안됩니다.

0

316

2

커리큘럼-강의교안

0

320

3

web_backup.sh 실행 시 mount.nfs No host to mount

0

375

1

환경설정 압축파일 해제 불가

0

319

1

SecureCRT 접속 오류

0

841

1

강의에서 로그를 쌓게 하는 vws.tmpcompany.com 이제 접속이 안되는건가요?

0

390

1

강의에서 보여주시는 컨플이나 자료 따로 있을까요?

0

329

1

vagrant up 명령어 실행시

1

385

1

vagrant ssh 접속 에러

0

561

2

서버 구축시 문제 발생

0

453

2

버츄얼박스 설치에러

0

314

1

스크립트 실행 결과 미표시

0

310

1

맥북 지원

0

378

1

[해결방법] 네트워크 어댑터 에러 메시지

1

407

2

DB 백업 스크립트 실행 오류

0

451

1