aprimorei um pouquinho para caso nao seja extamente a linha
antecessora do }; que tem a virgula aser apagada .

tac teste | sed '/)\;/{
:find
N
s/\,//g
t
b find
}
' | tac

primeiro , como queremos o a primeira "," antes do "};" , invertemos o
arquivo [tac]
quando ele achar o "};" ['/)\;/] , primeiro ele cria uma label [:find]
, depois ele tenta fazer a troca de "," para "" [s/\,//g] , caso ele
consiga , o script termina [t] , caso ele nao faca nenhuma troca , ele
volta para onde definimos a label find e repete tudo outra vez ate
achar uma "," a ser trocada [b find] . Por ultimo , queremos nosso
arquivo de volta na ordem certa , entao invertemos denovo [tac]


---------------------------------------------------------------------
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
---------------------------------------------------------------------
 
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:
    http://br.yahoo.com/info/utos.html

 



Responder a