Пример 1: счётчик итераций бесконечного цикла и объём используемой памяти (RSS)
#!/bin/bash
declare -A Array=( \
['A']=1 \
['B']=2 \
)
let i=0
while true; do
let ++i
echo -n "${i}"; echo -n ' '
ps -F -C 'bash' | grep "${0}" | tail -n 1 | awk '{print $6}'
done
$ bash test1.sh
1 1700
2 1704
3 1704
4 1704
5 1704
6 1704
7 1704
8 1704
9 1704
10 1704
…
2000 1704
…
10000 1708
^C
Пример 2: добавляем перебор элементов ассоциативного массива
#!/bin/bash
declare -A Array=( \
['A']=1 \
['B']=2 \
)
let i=0
while true; do
let ++i
for key in "${!Array[@]}"; do
echo -n ''
done
echo -n "${i}"; echo -n ' '
ps -F -C 'bash' | grep "${0}" | tail -n 1 | awk '{print $6}'
done
$ bash test2.sh
1 1700
2 1704
3 1704
4 1704
5 1704
6 1704
7 1704
8 1704
9 1704
10 1704
…
45 1708
…
989 1736
990 1740
991 1740
992 1740
993 1740
994 1740
995 1740
996 1740
997 1740
998 1740
999 1740
1000 1740
…
2000 1768
…
10000 2024
^C
Скажите, пожалуйста, это я рукожоп или таки разработчики баша косорукие обезьяны?