할당할 때 변수를 왼쪽에 유지하는 방법을 찾고 있지만 아직 깔끔한 방법을 찾지 못했습니다.
[[ "${selections[@]}" =~ "${package}" ]] && is_pkg_selected=true || is_pkg_selected=false
test_package_loaded $package && is_pkg_installed=true || is_pkg_installed=false
# ideal would be like...
is_pkg_selected=$([[ "${selections[@]}" =~ "${package}" ]])
is_pkg_installed=$(test_package_loaded $package && true || false)
어떤 아이디어가 있나요? 여러 줄의 변수를 함께 읽는 것은 매우 어렵습니다.
스크립트는 Raspbian을 실행하는 RaspberryPi에서 실행되므로 가능한 최상의 sh
접근 방식을 선호합니다.
답변1
넌 할 수있어
is_pkg_selected=$([[ "${selections[@]}" =~ "${package}" ]] && echo true || echo false)
is_pkg_installed=$(test_package_loaded "$package" && echo true || echo false)
즉, echo
변수에 할당할 텍스트를 출력하려면 명령 대체나 이와 유사한 것을 명시적으로 사용해야 합니다. (텍스트 true
이고 false
문자열만 기억하세요.)