🏴‍☠️
Сашка ☕
Blog  Tags 
💀 🔵 🔴

✴️ Массивы на чистом Shell

Опубликовано: 2 декабря 2024 г.
#!/bin/sh

IFS='|'
STROKE='Firebrick|SeaGreen|Sienna|Blue|Purple|Tomato'
set -f

getNth()  { shift "$(( $1 + 1 ))"; printf '%s\n' "$1"; }
getLast() { getNth "$(( $(length "$@") - 1 ))" "$@"; }
length()  { echo "$#"; }

INDEX=0
while [ $INDEX -le $(expr $(length $STROKE) - 1) ]; do
    echo $(getNth $INDEX $STROKE)

    INDEX=$(expr $INDEX + 1)
done