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 > Programação Shell Script e
.
google unix.com



Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui.

Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
Fio Thread Starter Fórum Respostas Última postagem
Listando arquivos com o caminho completo r_sethu UNIX para Dummies Perguntas & Respostas 5 06-15-2009 03:56
Listar arquivos com caminho completo mr_bold Programação Shell Script e 3 10-07-2008 01:19
para localizar o arquivo com o caminho completo surjyap Programação Shell Script e 5 01-18-2008 03:26
obter caminho completo do caminho relativo pólipo Programação Shell Script e 4 03-25-2007 01:08
Caminho completo do script em execução ksh? BriceBu Programação Shell Script e 2 09-19-2005 10:29

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 Rate Thread Display Modes
  #1 (permalink)  
Old 10-06-2008
aksaravanan aksaravanan is offline
Usuário
  
 

Join Date: Oct 2008
Posts: 1
Substituir um ficheiro com o caminho completo usando sed

oi,

Preciso de uma linha para substituir um arquivo com um novo dispositivo bruto localização ..
ficheiro original ..

/ opt/sybase/ASE1502/ASE-15_0/bin/dataserver \
-d/data/TST_AKS1/sybdevices/master.dat \
-e/logs/sybase/TST_AKS1/SFO_TST_AKS1.log \
-c/apps/sybase/ASE1502/ASE-15_0/TST_AKS1.cfg \
-M/apps/sybase/ASE1502/ASE-15_0 \


Preciso alterar o valor de d-a / dev/vx/rdsk/sandg-100/raw200-01
assim o novo arquivo deve ser semelhante a

/ opt/sybase/ASE1502/ASE-15_0/bin/dataserver \
-d/dev/vx/rdsk/sandg-100/raw200-01 \
-e/logs/sybase/TST_AKS1/SFO_TST_AKS1.log \
-c/apps/sybase/ASE1502/ASE-15_0/TST_AKS1.cfg \
-M/apps/sybase/ASE1502/ASE-15_0 \

Eu tentei usar sed
i definir o novo nome do arquivo em um varaiable

exportação mydev \u003d / dev/vx/rdsk/sandg-100/raw200-01
sed s / ^-d .* / $ mydev / g

não funcionou ..

alguma idéia de como fazer o trabalho, seria bom que eu posso usar um reservatório variável dentro sed comando para substituir o valor ...

Eu mesmo tentei awk, mas não quer trabalhar

awk '(if ($ 1 \u003d ~ "-d") print $ 0) else print $ mydevice' <filename

obrigado
AK
  #2 (permalink)  
Old 10-06-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programador, autor
  
 

Join Date: Mar 2007
Localização: Toronto, Canadá
Posts: 2.361
Citação:
Originally Posted by aksaravanan View Post
oi,

Preciso de uma linha para substituir um arquivo com um novo dispositivo bruto localização ..
ficheiro original ..

/ opt/sybase/ASE1502/ASE-15_0/bin/dataserver \
-d/data/TST_AKS1/sybdevices/master.dat \
-e/logs/sybase/TST_AKS1/SFO_TST_AKS1.log \
-c/apps/sybase/ASE1502/ASE-15_0/TST_AKS1.cfg \
-M/apps/sybase/ASE1502/ASE-15_0 \


Preciso alterar o valor de d-a / dev/vx/rdsk/sandg-100/raw200-01
assim o novo arquivo deve ser semelhante a

/ opt/sybase/ASE1502/ASE-15_0/bin/dataserver \
-d/dev/vx/rdsk/sandg-100/raw200-01 \
-e/logs/sybase/TST_AKS1/SFO_TST_AKS1.log \
-c/apps/sybase/ASE1502/ASE-15_0/TST_AKS1.cfg \
-M/apps/sybase/ASE1502/ASE-15_0 \

Eu tentei usar sed
i definir o novo nome do arquivo em um varaiable

exportação mydev \u003d / dev/vx/rdsk/sandg-100/raw200-01
sed s / ^-d .* / $ mydev / g

não funcionou ..

alguma idéia de como fazer o trabalho, seria bom que eu posso usar um reservatório variável dentro sed comando para substituir o valor ...

Usar um delimitador diferente quando você tem barras em um dos campos:

Código:
mydev=/dev/vx/rdsk/sandg-100/raw200-01
sed "s|^-d.*|$mydev|g"
Citação:
Eu mesmo tentei awk, mas não quer trabalhar

awk '(if ($ 1 \u003d ~ "-d") print $ 0) else print $ mydevice' <filename

Código:
awk -v mydev="$mydev" '/^-d/ { print mydev; next } { print }' filename
  #3 (permalink)  
Old 10-06-2008
freelong freelong is offline
Usuário
  
 

Join Date: Apr 2008
Lugares: 38
Muito simples de usar SED aqui:

Código:
sed '/-d\/data/c\
-d/dev/vx/rdsk/sandg-100/raw200-01 \\
' filename
Closed Thread

Marcadores

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 02:10.


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