Quantcast
Channel: Linux.org.ru: Форум (тех. форум)
Viewing all articles
Browse latest Browse all 73832

Память в bash течёт как из ведра при переборе элементов массива

$
0
0

Пример 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

Скажите, пожалуйста, это я рукожоп или таки разработчики баша косорукие обезьяны?

 , , , ,


Viewing all articles
Browse latest Browse all 73832

Trending Articles