The UNIX and Linux Forums  
Olá e boas-vindas de Estados Unidos para o UNIX e Linux Forum! Obrigado por visitar e fazer parte da nossa comunidade global.

Go Back   O UNIX e Linux Forum > Top Fóruns > UNIX & avançada para usuários experientes
.
google unix.com



UNIX & avançada para usuários experientes Especialista-a-Expert. Saiba avançado UNIX, comandos UNIX, Linux, Sistemas Operativos, Administração de Sistemas, Programação, Shell, shell scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
converter hex para dez. aismann Programação Shell Script e 4 02-26-2008 05:51
Convertendo \ 0 para uma \ n ajcannon Programação Shell Script e 2 09-28-2007 11:30
Convertendo seeyou SCO 3 01-19-2006 02:22
conversão. txt laila63 UNIX para Dummies Perguntas & Respostas 4 06-30-2004 04:56
converter kb para mb csaunders UNIX para Dummies Perguntas & Respostas 1 02-26-2004 04:14

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback Thread Tools Pesquisar este Thread Avaliação: Thread Rating: 1 votes, 3.00 average. Display Modes
  #1 (permalink)  
Old 12-12-2006
sakthi.abdullah sakthi.abdullah is offline
Usuário
  
 

Join Date: Nov 2006
Lugares: 22
sed convertendo / a \ /

Oi tudo,
Estou usando sed para converter uma cadeia de caracteres do tipo /abc / def / gh por \ / abc \ / def \ / gh

[estagiário LINUX @ ~] $ edu \u003d "/ home / abc / dez."

Quando eu subscrevo isso variável e passá-la para sed , trabalha muito bem ...
[estagiário LINUX @ ~] $ echo $ edu |sed 's / \ / / \ \ \ / / g'
\ / home \ / abc \ / dez.

Mas quando eu tentar armazenar em uma variável, ele mostra o seguinte erro
[estagiário LINUX @ ~] $ ued \u003d `echo $ edu |sed 's / \ / / \ \ \ / / g' `
sed:-E expressão # 1, char 9: opção desconhecida para `s'

AJUDA BLEAZ

Última edição por sakthi.abdullah; em 12/12/2006 09:23..
  #2 (permalink)  
Old 12-12-2006
jim McNAMARA jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: Feb 2004
Localização: NM
Mensagens: 5.753
Código:
echo "a/b/d" | sed 's#/#\\/#g'
Quando você estiver usando sed para trabalhar com "/" caracteres que você tem que usar outro delimitador - neste caso, eu escolhi "#"
  #3 (permalink)  
Old 12-13-2006
sakthi.abdullah sakthi.abdullah is offline
Usuário
  
 

Join Date: Nov 2006
Lugares: 22
Pode me explicar isso mais uma vez
Normalmente, é a forma de s / velho / novo /g mas sed 's # / # \ \ / # g' contém apenas s / ... / g
  #4 (permalink)  
Old 12-13-2006
sakthi.abdullah sakthi.abdullah is offline
Usuário
  
 

Join Date: Nov 2006
Lugares: 22
Citação:
Originally Posted by jim McNAMARA
Código:
echo "a/b/d" | sed 's#/#\\/#g'
Quando você estiver usando sed para trabalhar com "/" caracteres que você tem que usar outro delimitador - neste caso, eu escolhi "#"
Novamente, echo "a / b / d" | sed 's # / # \ \ / # g' ll funcionar bem .... Mas o que eu preciso é algo assim .. como eu posso armazenar esse valor em uma variável
como abc \u003d `echo" a / b / d "| sed 's # / # \ \ / # g'»
  #5 (permalink)  
Old 12-13-2006
vino's Avatar
vino vino is offline Forum Staff  
Apoiante (in vino veritas)
  
 

Join Date: Feb 2005
Local: Bangalore, Índia
Mensagens: 2.798
Citação:
Originally Posted by sakthi.abdullah
abc \u003d `echo" a / b / d "| sed 's # / # \ \ / # g'»
Vire o backticks em $(...). Veja isto.

Código:
[~]$ abc=`echo "a/b/d" | sed 's#/#\\/#g'`
[~]$ echo $abc
a/b/d
[~]$ abc=$(echo "a/b/d" | sed 's#/#\\/#g')
[~]$ echo $abc
a\/b\/d
[~]$
Humm .. Estou um pouco surpreendido com a diferença de comportamento dos `...` e $(...)

Editar
Ah! Veja como ele vai com o backticks.
Código:
[/tmp]$ abc=`echo "a/b/d" | sed 's#/#\\\\/#g'`
[/tmp]$ echo $abc
a\/b\/d
E aqui o motivo. Do homem sh
Código:
       When  the  old-style  backquote  form of substitution is used, backslash
       retains its literal meaning except when followed by $,  ?,  or  \.   The
       first  backquote not preceded by a backslash terminates the command sub-
       stitution.  When using the $(command) form, all characters  between  the
       parentheses make up the command; none are treated specially.
/Editar

Última edição por vino; em 12/13/2006 01:22..
  #6 (permalink)  
Old 12-13-2006
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Localização: Ashburn, Virginia
Mensagens: 9.116
Backtick versão:
abc \u003d `echo" a / b / d "| sed 's # / # \ \ \ \ / # g' `

mas eu prefiro $(...) fortemente para `...` por muitos motivos.
  #7 (permalink)  
Old 12-14-2006
sakthi.abdullah sakthi.abdullah is offline
Usuário
  
 

Join Date: Nov 2006
Lugares: 22
Citação:
Originally Posted by Perderabo
Backtick versão:
abc \u003d `echo" a / b / d "| sed 's # / # \ \ \ \ / # g' `

mas eu prefiro $(...) fortemente para `...` por muitos motivos.
Pode você queira mencionar aqueles ..
Closed Thread

Marcadores

Tags
linux

Thread Tools Pesquisar este Thread
Pesquisar este Thread:

Pesquisa Avançada
Display Modes Esta taxa Thread
Esta taxa Thread:

Destacamento Regimento
Você não pode postar novas threads
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar suas postagens

BB code é Ligado
Smilies são Ligado
[IMG] código é Ligado
Código HTML é Desligado
Trackbacks são Ligado
Pingbacks são Ligado
Refbacks são Ligado




Todos os horários são GMT -4. A hora é agora 01:11.


Powered by: vBulletinCopyright © 2000 - 2006, Jelsoft Enterprises Limited. Língua Traduções Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
O UNIX e Linux Fóruns Content Copyright © 1993-2009. Todos os Direitos Reserved.Ad Gestão por RedTyger

Content Relevant URLs por vBSEO 3.2.0