Olah,
Reinaldo Carvalho wrote:
Eu acho que ele quis perguntar, quantos bytes eu posso por em uma
variável do bash. (considerando que não foi configurado nenhum limite
de alocação de memória do security/limits.conf)
tipo assim..
a=a
i=0
while true ; do a=$a$a ; let i++ ; echo \$a contem $i bytes ; done
até onde isso vai? hehehe
Acredito q esse limite seja a memoria do sistema. Veja alguns testes:
[begnini 0 coke tmp]$ echo $BASH_VERSION
3.00.16(1)-release
[begnini 0 coke tmp]$ ls -lh file
-rw-r--r-- 1 begnini begnini 50M 2006-02-02 12:01 file
[begnini 0 coke tmp]$ a=`cat file`
[begnini 0 coke tmp]$ echo -n "$a" > file2 (varios minutos depois...)
[begnini 0 coke tmp]$ diff file file2
[begnini 0 coke tmp]$
Ou seja, consegui criar uma variavel com 50 MB de conteudo sem problema
algum, tirando o gasto de memoria, claro.
Com um arquivo um pouco maior...
[begnini 0 coke tmp]$ ls -lha t
-rw-r--r-- 1 begnini begnini 119M 2006-02-02 12:19 t
[begnini 0 coke tmp]$ a=`cat t` (alguns minutos depois...)
[begnini 0 coke tmp]$ ps aux | grep bash
bash: fork: Não foi possÃvel alocar memória
Ae a maquina morre :)
Versoes antigas do BASH tinham limite no tamanho da variavel. Se nao me
engano BASH 2.0 tinha como limite 64 kb.
PS: algo interessante eh a alocacao de memoria do BASH. Mesmo depois de
ter dado um unset a ou a="", o BASH continuava gastando quase a mesma
quantidade de memoria. P/ liberar a memoria do sistema, apenas matando o
shell.
[]s
Humberto Pereira
---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos