shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Script consumindo memória demais.


From: andelnyr
Subject: Script consumindo memória demais.
Date: 08 Dec 2014 09:50:39 -0800

Prezados


Para realizar testes no meu ambiente de trabalho, escrevi uma biblioteca de funções e quando preciso realizar tais testes, simplesmente carrego esta biblioteca com um source e mando brasa no meu serviço.


Ocorre que numa sexta-feira dessas, eu carreguei a biblioteca, executei uma função de teste dentro de um loop "while true do done" e deixei rodando o final de semana todo, sem querer - é claro.


Quando cheguei na segunda a máquina estava travada, só respondendo a um "dedoff" ( desligamento pelo longo pressionamento da tecla power).


Segue abaixo um pequeno script que causa o mesmo efeito:


cat teste_memoria.sh

#!/bin/bash


  function ler_arquivo {

    local endereco="$1"

    grep "$endereco" arquivo.txt

  }


  echo "1 aaa" > arquivo.txt

  echo "2 bbb" >> arquivo.txt

  echo "3 ccc" >> arquivo.txt

  echo "4 ddd" >> arquivo.txt

  echo "5 eee" >> arquivo.txt


  clear

  

  for n in $(seq 1 100000); do

    for i in 1 2 3 4 5; do

      vetor=( $(ler_arquivo "$i") )

      echo  "$n ${vetor[1]}"

    done

  done


Se eu executo este script com "./teste_memoria.sh" a quantidade de memória alocada para a instância do bash não se altera, porém se eu fizer "source teste_memoria.sh" a quantidade de memória cresce a cada execução, não retornando aos patamares iniciais.


O que estou fazendo de errado? Há como evitar esse efeito?





reply via email to

[Prev in Thread] Current Thread [Next in Thread]