Есть какой-то более элегантный способ работы с аргументами в функции?
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}"