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: Paulo Soares Drumond
Subject: Re: [shell-script] gerando tar apartir de links simbólicos para diretórios
Date: Wed, 16 Apr 2008 09:26:42 -0300

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