투케이2K

100. (LINUX/리눅스) [쉘 스크립트 / Shell script] : declare 사용해 Map 맵 선언 및 특정 key 포함 확인 , 특정 key 삭제 - unset 본문

Linux (cmd)

100. (LINUX/리눅스) [쉘 스크립트 / Shell script] : declare 사용해 Map 맵 선언 및 특정 key 포함 확인 , 특정 key 삭제 - unset

투케이2K 2024. 8. 2. 18:44
반응형

[개발 환경 설정]

사용 툴 : Putty

OS : LINUX

 

[소스 코드]

 

# ------------------------------------------------------------------------------------------------
# [쉘 스크립트 / Shell script 설명]
# ------------------------------------------------------------------------------------------------

1. 쉘 스크립트 는 Shell 이나 command line 인터프리터에서 구동되도록 작성된 스크립트입니다.

2. 윈도우 배치 파일 (.bat) 개념과 비슷하며, 쉘 스크립트 동작으로 정의 된 명령이 자동으로 수행됩니다.

# ------------------------------------------------------------------------------------------------





# ------------------------------------------------------------------------------------------------
# [사전) 쉘 스크립트 파일 생성 및 권한 설명 참고 사이트]
# ------------------------------------------------------------------------------------------------

https://blog.naver.com/kkh0977/222808230519?trackingCode=blog_bloghome_searchlist

# ------------------------------------------------------------------------------------------------





# ------------------------------------------------------------------------------------------------
# [소스 코드]
# ------------------------------------------------------------------------------------------------

#!/bin/sh

# [HELLO] --------------------------------------------------

echo ""
echo "-------------------------------------------"
echo "Hello Linux Shell Script"
echo "-------------------------------------------"
echo ""

# [START] --------------------------------------------------

# [변수 선언 실시 : map]
declare -A map


# [map 에 key, value 추가 수행]
map['name']='twok'
map['age']=30


# [map 특정 key 포함 정보 확인]
if [ -z ${map['name']} ]; then
    echo "name : not exist"
else
    echo "name : exist >> delete key"

    # [특정 key 값 삭제]
    unset map['name']
fi


# [map 정보 확인]
m_length=${#map[@]}
m_keys=${!map[@]}
m_values=${map[@]}


# [로그 출력 수행]
echo ""
echo "-------------------------------------------"
echo "m_length : $m_length"
echo "-------------------------------------------"
echo "m_keys : $m_keys"
echo "-------------------------------------------"
echo "m_values : $m_values"
echo "-------------------------------------------"
echo ""

# [END] ---------------------------------------------------

# ------------------------------------------------------------------------------------------------





# ------------------------------------------------------------------------------------------------
# [결과 출력]
# ------------------------------------------------------------------------------------------------

$ ./test.sh

-------------------------------------------
Hello Linux Shell Script
-------------------------------------------

name : exist >> delete key

-------------------------------------------
m_length : 1
-------------------------------------------
m_keys : age
-------------------------------------------
m_values : 30
-------------------------------------------

# ------------------------------------------------------------------------------------------------

 

반응형
Comments