메뉴가 있는 쉘 스크립트
CLI로 만들기
vi menu.sh
1. uptime
2. df -h
3. free -m
4. pstree
5. 서버를 입력받아서 그 서버에 ssh로 접속
함수작성
메뉴를 화면에 표시하기 위해서 clear명령어로 화면지움
txt로 메뉴를 출력 <-- menu 함수
메뉴 선택해서 실행 이후에 일시중지 Press any key to continue... <-- press_key
while true
#!/bin/bash
function menu {
clear
cat << EOF
========== menu =========
1. 로드 에버리지
2. 디스크 상태
3. 메모리 상태
4. 프로새스 트리
5. 입력한 서버에 ssh 접속
6. 메뉴 종료
=======================
EOF
read -p "hope : " SELECT
}
function press_key {
echo
read -n1 -rsp "Press any key to continue..."
echo
echo
}
while true
do
menu
case ${SELECT} in
1)
clear
echo "로드 에버리지"
uptime
press_key
;;
2)
clear
echo "디스크 상태"
df -h
press_key
;;
3)
clear
echo "메모리 상태"
free -m
press_key
;;
4)
clear
echo "프로세스 트리"
pstree
press_key
;;
5)
clear
read -p "접속하고 싶은 서버 이름을 입력해주세요, (cent[1-3]) : " SVR
sleep 1
echo "${SVR}에 접속합니다..."
ssh ${SVR}
;;
6)
exit 0
;;
* )
echo " wrong num"
press_key
;;
esac
done
↓↓↓↓↓
GUI로 만들기
dialog --옵션명 옵션에필요한변수
#!/bin/bash
function menu {
dialog --title " GUI MENU " \
--radiolist "select" 20 35 6 \ <-- 가로사이즈 세로사이즈 메뉴의 개수(숫자)
1. "로드 에버리지" off \ <-- 아무것도 선택하지 않은상태에서 실행하기 위해 off를 써준다.
2. "디스크 상태" off \
3. "메모리 상태" off \
4. "프로새스 트리" off \
5. "입력한 서버에 ssh 접속" off \
6. "메뉴 종료" off \
2>./select <-- 표준입력 - 0 , 표준출력 - 1, 표준에러 - 2
}
function press_key {
echo
read -n1 -rsp "Press any key to continue..."
echo
echo
}
while true
do
menu
SELECT=$(cat select)
case ${SELECT} in
1)
clear
echo "로드 에버리지"
uptime
press_key
;;
2)
clear
echo "디스크 상태"
df -h
press_key
;;
3)
clear
echo "메모리 상태"
free -m
press_key
;;
4)
clear
echo "프로세스 트리"
pstree
press_key
;;
5)
clear
read -p "접속하고 싶은 서버 이름을 입력해주세요, (cent[1-3]) : " SVR
sleep 1
echo "${SVR}에 접속합니다..."
ssh ${SVR}
;;
6)
exit 0
;;
* )
echo " wrong num"
press_key
;;
esac
done
'클라우드 > BashShell' 카테고리의 다른 글
window10 cmd 붙여넣기 해결 (0) | 2023.03.02 |
---|---|
고급 명령어 (0) | 2023.02.28 |
대화식 쉘 스크립트 (0) | 2023.02.28 |
간단 쉘 스크립트 array, redirect (0) | 2023.02.27 |
간단 쉘 스크립트 function (0) | 2023.02.27 |