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

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

Re: [shell-script] gerando tar apartir de links simbólicos para diretóri


From: Ricardo Brito do Nascimento
Subject: Re: [shell-script] gerando tar apartir de links simbólicos para diretórios
Date: Wed, 16 Apr 2008 10:04:04 -0300
User-agent: Thunderbird 2.0.0.5 (X11/20070719)

Desculpem o meu texto obscuro! rsrsrsrs

Tenho uma estrutura montada para Zope/Plone com ambiente de produção e homologação distintos, os quais compartilham produtos em comum. Este produtos para facilitar a administração os organizei da seguinte forma:
|-/opt
   |-produtos
      |-svn-local
      |-svn-plone
      |-tgz
   |-Plone
      |-homologação
         |-Products
              |-symbolic link para /opt/Plone/produção/Products
      |-produção
         |-Products
            |-symbolic links
            |-outros produtos

A lista da relação anterior que enviei é o filtro do diretório '/opt/Plone/produção/Products/', a qual preciso gerar um pacote tar contendo o conteúdo representado pelos links simbólicos, que neste diretório representa exatamente os produtos para exportação da instância de produção.

Agora espero ter sido claro e se não consegui ainda, estou a disposição,
Desde já grato.

------------------------------------------------------------------------
Ninguém há semelhante a ti, ó Senhor; tu és grande, e grande o poder do teu nome. (1ªJeremias 10.6) No one is like you, O Lord; you are great, and your name is mighty in power. (1ªJeremiah 10.6)
 Jesus te ama, aceite-O!   Jesus loves you, accept you Him!



Paulo Soares Drumond escreveu:

Ricardo,

Não entendi muito bem o que você deseja em relação aos links simbólicos. Se
você os quer armazenar ou deseja armazenar também os diretórios para os
quais eles apontam.

Mas vou tentar aqui deixar minha contribuição. Como o mop disse, você pode
utilizar o recurso de lista de arquivos do tar. Eu uso por aqui. Gero a
lista num arquivo txt e dentro do meu script coloco o conteúdo deste arquivo
numa variável assim:

- lista.txt é o arquivo com a lista de arquivos que entram no tar
LISTA=$(cat lista.txt | grep ^\/ | sort | uniq)

Depois disso, você pode usar o seguinte comando:
tar -cvzh -f <arquivo de destino>.tar.gz $LISTA

A opção "h" indica que você quer também o conteúdo dos diretórios apontados
por links simbólicos. Se você deseja apenas armazenar os links, basta
suprimir esta opção.

Para uma maior compressão, em vez de usar "z" (do gzip), você pode usar "j",
do bzip, que é o que eu uso.

Paulo

"Se diante de mim não se abrir o mar, Deus vai me fazer andar por sobre as
águas"

Em 15/04/08, Ricardo Brito do Nascimento <address@hidden <mailto:informatica%40rbncurriculo.cjb.net>>
escreveu:
>
> Tenho vários arquivos em um diretório dentre eles os seguintes para
> outros diretórios:
> ./TemplateFields@
> ./IntranetPr@
> ./ATSchemaEditorNG@
> ./ArianoPr@
> ./PlonePopoll@
> ./Ploneboard@
> ./intelligenttext@
> ./PythonField@
> ./CMFPublicator@
> ./OscarPr@
> ./MulherPr@
> ./Poi@
> ./NaifPr@
> ./ATVocabularyManager@
> ./TALESField@
> ./windowZ@
> ./CMFSin@
> ./DataGridField@
> ./SignupSheet@
> ./AddRemoveWidget@
>
> inicialmente tentei assim:
> find . -maxdepth 1 -type l ! -name "PRLiderancas" -exec tar cvzf
> /opt/intranetpr.tgz {} \;
> e não funcionou!!
>
> Consegui fazer como abaixo, mas **gostaria de aprender uma maneira mais
> simples**.
> find . -maxdepth 1 -type l ! -name "PRLiderancas" -exec ls -l {} \;|
> awk '{print $11}'| while read a; do tar cvzf /opt/intranetpr.tgz $a; done
>
> Conto com a ajuda dos senhores.
>
>
>

[As partes desta mensagem que não continham texto foram removidas]




reply via email to

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