Есть какой-то более элегантный способ работы с аргументами в функции?
z1() {
    local local_array=("${@}")
    for i in $(seq 1 ${local_array[0]}); do
        local "${local_array[${i}]}"="${local_array[(("${i}"+local_array[0]))]}";shift
    done
    echo "${x}" "${y}" "${z}"
}
x=1
y=2
z=3
VARIABLES=("x" "y")
z1 "${#VARIABLES[@]}" \
   "${VARIABLES[@]}" \
   "${x}" \
   "${y}" \
   "${z}"





