Bash에서 배열 안에 지정한 값이 존재하는지 확인하는 코드입니다.
테스트 코드
#!/usr/bin/env bash
##
# 배열 안에 지정한 값이 존재하는지 확인
##
in_array() {
local needle array value
needle="${1}"; shift; array=("${@}")
for value in ${array[@]}; do [ "${value}" == "${needle}" ] && echo "true" && return; done
echo "false"
}
# 테스트
array_test=("linux" "windows" "mac")
in_array linux ${array_test[@]} # true
in_array ios ${array_test[@]} # false
# 조건문 테스트
array_check=`in_array linux ${array_test[@]}`
if [ "${array_check}" == "true" ]; then
echo "linux"
fi
결과 화면
true
false
linux
함께보기