e se a gente fizesse com subistituição de viariaveis, sem usar o sed?

linha1=/usr/cvs/teste:/usr/cvs/repos2:/usr/cvs/repos3

r=/usr/cvs/repos4

troca=$(echo $linha1 | cut -d: -f3)

echo ${linha1/$troca/$r}
/usr/cvs/teste:/usr/cvs/repos2:/usr/cvs/repos4

sei lá...creio que é melhor que quebrar a cabeça com sed...não acha?

[]'s


+------------------------------------------------------------------------------------------------------------------+
Reinaldo
Linux User : 406967
Emails:
echo 'reimlima''.com' | sed
's/\(reimlima\)\(.com\)/[EMAIL PROTECTED]@[EMAIL PROTECTED]/'
+------------------------------------------------------------------------------------------------------------------+




>From: "Alfredo Casanova" <[EMAIL PROTECTED]>
>Reply-To: [email protected]
>To: [email protected]
>Subject: Re: [shell-script] Substituindo final da 1a linha usando uma
>variável
>Date: Mon, 5 Jun 2006 10:30:38 -0300
>
>mas assim ele substituiria as aspas, e adicionaria ela no final?
>
>tenho q adicionar o nome do repositorio dentro das aspas
>
>por isso coloquei "$ e :$r\"
>
>
>Em 05/06/06, Reinaldo Marques de Lima <[EMAIL PROTECTED]> escreveu:
> >
> >
> > Mano, tenta só assim:
> >
> > sed "1s/\$/:$r\/" cvs-pserver.conf > teste
> >
> >
> >
>+------------------------------------------------------------------------------------------------------------------+
> > Reinaldo
> > Linux User : 406967
> > Emails:
> > echo 'reimlima''.com' | sed
> > 's/\(reimlima\)\(.com\)/[EMAIL PROTECTED]@[EMAIL PROTECTED]/'
> >
> >
>+------------------------------------------------------------------------------------------------------------------+
> >
> >
> >
> >
> > >From: "Alfredo Casanova" <[EMAIL PROTECTED]>
> > >Reply-To: [email protected]
> > >To: [email protected]
> > >Subject: [shell-script] Substituindo final da 1a linha usando uma
> > variável
> > >Date: Mon, 5 Jun 2006 10:21:13 -0300
> > >
> > >Olá pessoal
> > >É o seguinte
> > >estou fazendo um script pra automatizar a criação de repositorios no
> > cvs...
> > >então, em determinado memoento, eu preciso editar o final da primeira
> > linha
> > >do arquivo cvs-pserver.conf, que é +- assim:
> > >
> > >CVS_PSERV_REPOS="/usr/cvs/teste:/usr/cvs/repos2:/usr/cvs/repos3"
> > >
> > >e adicionar o novo repositorio lá
> > >então, fiz o seguinte
> > >
> > >joguei o nome do novo repositorio na variavel $r
> > >r=/usr/cvs/repos4
> > >e fiz:
> > >
> > >sed '1s/\"$/:$r\"/' cvs-pserver.conf > teste
> > >
> > >Aí ele pega o valor "$ (aspas no final da linha) na primeira linha (1s)
>e
> > >substitui pelço valor de $r, certo? NAO!
> > >ele coloca :$r no final da linha, nao substitui a variavel!
> > >
> > >Aí achei que isso acontecia pq eu estava usando aspas simples no sed
> > >e mudei pra aspas duplas
> > >
> > >sed "1s/\"$/:$r\"/" cvs-pserver.conf > teste
> > >
> > >mas aí ele me retorna
> > >sed: -e _expression_ #1, char 9: unknown option to `s'
> > >
> > >--
> > >[]'s
> > >Alfredo Casanova
> > >icq: 15793271
> > >msn: [EMAIL PROTECTED]
> > >aim: alfredotcasanova
> > >yim: atcasanova2
> > >tel: +55 61 84137319
> > >
> > >
> > >[As partes desta mensagem que não continham texto foram removidas]
> > >
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > 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
> >
> >
> >
> >
> >
> >
> >
> >
>
>
>--
>[]'s
>Alfredo Casanova
>icq: 15793271
>msn: [EMAIL PROTECTED]
>aim: alfredotcasanova
>yim: atcasanova2
>tel: +55 61 84137319
>
>
>[As partes desta mensagem que não continham texto foram removidas]
>




---------------------------------------------------------------------
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




Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

Responder a