> 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.
>
> obs:
> Acabei me conformando na quinta com uma linha
> de cada vez:
>
> 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 [EMAIL PROTECTED];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.
Atenciosamente
Ricardo A. Reis
UNIFESP
Unix and Network Admin
_______________________________________________________
Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora!
http://br.acesso.yahoo.com
---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
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
- Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
- Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!.
