shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script]


From: Thobias Salazar Trevisan
Subject: Re: [shell-script]
Date: Sat, 2 Aug 2003 11:43:17 -0300 (BRT)

ae maurilio,

On Sat, 2 Aug 2003, Maurilio N. - Hotmail wrote:

> mas vai outra duvida
> !!!! em alguns casos vou ter que substituir // por /, pensei em jogar o 
> resultado da sua saida ( backup_files=$(echo "$files"|sed 
> "s,^,$caminho,;s, /,  $caminho/,g")
> ) pra uma variavel tmp por Ex e subistituir as \\ por \, sendo assim tentei
>  assim , primeiro nomei a variavel "bacakup_files" para "tmp" e 
> fis assim ( backup_files=`echo tmp$ |sed s,'//','/',g' ) e o 
> resultado ficou OK, tem como filtrar tudo em uma linha ? !!!!

$ echo "$files"
/etc/* /usr/* /var/nome.de.um.arquivo
$ echo $caminho
/mnt/server/
$ echo "$files" | sed "s,^, ,;s, /, $caminho,g"          
/mnt/server/etc/* /mnt/server/usr/* /mnt/server/var/nome.de.um.arquivo

se você não sabe se o caminho termina ou não com uma barra, podes 
usar:

$ echo "$files" | sed "s,^, ,;s, /, $caminho/,g;s,//,/,g"
/mnt/server/etc/* /mnt/server/usr/* /mnt/server/var/nome.de.um.arquivo

> e uma pergunta
> ????? estive pensando no modo de compartilhamento, e pensei que como eu + 
> alquem querira fazer backup de mais de um compartilhamento em 
> um mesmo servidor, e pensei em fazer assim, quando for leio o arquivo 
> do servidor hoje ele me retorna o compartilhamento que esta la, 
> gostaria de numeralos, para quando quando for ler o 
> compartilhamento, poder ler tambem em separado ler os arquivos 
> que vao ser backupeados no compartilhamento, entao terei duas 
> variavei "mutantes" por assim dizer
> hoje faço assim para obter a variavel de compartilhamento
> ---------------conteudo do arquivo servidor.file--------------
> Compartilhamento=PastaArquivos
> Arquivos=arquivo_1 arquivo_2 arquivo_3
> ---------------conteudo do arquivo servidor.file--------------
> 
> compartilha=` grep "Compartilhamento=" servidor.file | 
> sed -e /#/d -e s/Compartilhamento=//`
> o resultado seria +- assim
> $compartilha=PastaArquivos

Podes fazer assim:

$ sed -n 's/^Compartilhamento=//p' servidor.file
PastaArquivos

$ compartilha=$(sed -n 's/^Compartilhamento=//p' servidor.file)
$ echo $compartilha
PastaArquivos
 
> faço o mesmo pra os arquivos que vou copiar do compartilhamento.
> como faço para variar a variavel $compartilha e a $arquivos
> pensei em ter no arquivo assim
> ---------------conteudo do arquivo servidor.file--------------
> 1Compartilhamento=Pasta1Arquivos
> 1Arquivos=arquivo_1 arquivo_2 arquivo_3
> 2Compartilhamento=Pasta2Arquivos
> 2Arquivos=*
> ---------------conteudo do arquivo servidor.file--------------

Aqui eu não entendi direito, mas você pode usar o filtro anterior 
para pegar os compartilhamentos, fazer um | e pegar só a linha 
que você quer:

$ echo -e "A\nB\nC" | sed '1!d'
A
$ echo -e "A\nB\nC" | sed '2!d'
B
$ echo -e "A\nB\nC" | sed '3!d'
C

falow

-- 
thobias
-------
echo 149467716597185730835282818301635817226P | dc
-------
http://www.lcp.coppe.ufrj.br/~thobias

____________________________
|                          
| Against - HTML Mail      
| Against - MS ATTACHMENTS 
|                          
----------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]