[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: arrays -- foreach
From: |
oteb_04 |
Subject: |
Re: arrays -- foreach |
Date: |
Sun, 23 Apr 2006 17:10:00 -0000 |
User-agent: |
eGroups-EW/0.82 |
> > Terminei a quarta com uma dúvida de porque isso não funciona:
> > echo -e ${x1[*]//%//$gs_defaults/$(wmaker)\\\n}| sh
> >
> > o resultado:
> > sh: line 1: apply_fix: command not found
> > sh: line 2: apply_fix: command not found
> > sh: line 3: apply_fix: command not found
> > sh: line 4: apply_fix: command not found
>
> Essa e' facil, apply_fix e' uma funcao local e existe nomente na
> instancia atual do sh(bash),
> quando vc fez um pipe |sh mando executar
> echo "apply_fix /home/ricardo2/Defaults/WMState apply_fix
> /home/ricardo2/Defaults/WMWindowAttributes apply_fix
> /home/ricardo2/Defaults/WindowMaker" |sh e e' obvio que em seu
> /etc/profile vc nao tem essa funcao, pra fazer isso funcionar vc
deveria
> passas os diretorio
> atraves de um for ou while para a funcao tratar, dessa forma td fica
local.
Sobre a "instância atual do sh" tudo bem, mas eu não chegava até o
/etc/profile. Obrigado!
> > for ((i=0;i<${#x1[*]};i++))
> > do
> > for f in wmaker wmstate wmpref
> > do
> > $(echo -e ${x1[$i]//%//$gs_defaults/$($f)}) # | sed
> > "s#^#apply_fix #g;/ $/d" )
> > #apply_fix ${gs_system_defaults}/$($f)
> > done
> > done
>
> for _dir in ${x[@]};do
> for f in wmaker wmstate wmpref;do
> apply_fix ${_dir//%//$gs_defaults/$($f)}
> done
> done
>
>
> Eu achei essa forma muito mais legivel, nos scripts que faco acho
> importantes tomar cuidado
> com substituicoes do tipo ${_dir//%//$gs_defaults/$($f)}, normalmente
> isso dificulta a leitura,
> eu sempre declaro novas variaveis com o conteudo da modificacao oq vai
> ajudar alguem a ler e entender.
>
É, um scritp de fácil leitura é uma boa prática de programação. Mesmo
que aconteça de alguma perda de velocidade.
Obrigado pela atenção!
[]
hpfn
- arrays -- foreach, oteb_04, 2006/04/18
- Re: [shell-script] arrays -- foreach, Ricardo A. Reis, 2006/04/21
- Re: [shell-script] arrays -- foreach, Felipe Kellermann, 2006/04/21
- Re: arrays -- foreach, oteb_04, 2006/04/22
- Re: [shell-script] Re: arrays -- foreach, Ricardo A. Reis, 2006/04/23
- Re: arrays -- foreach,
oteb_04 <=
- Re: arrays -- foreach, oteb_04, 2006/04/23
- Re: [shell-script] Re: arrays -- foreach, Ricardo A. Reis, 2006/04/30
- Re: arrays -- foreach, oteb_04, 2006/04/30