Como posso copiar, diretório recursivo, apenas arquivos com um atributo 1 e redefinir um atributo para 0?

0

Como posso copiar, diretório recursivo, apenas arquivos com um atributo 1, e redefinir este atributo para 0? Obrigado, Francisco

    
por Francisco Aloisio 05.06.2012 / 21:22

1 resposta

0

Você provavelmente terá que instalar o pacote attr se quiser definir e obter atributos estendidos.

Você pode escrever um script em uma linguagem shell ou em uma linguagem de nível mais alto para descer diretórios e examinar cada arquivo, copiando aqueles que atendem aos seus critérios. Eu usaria python pessoalmente.

Usando o comando getfattr, você pode recuperar o valor para um usuário. nome você define a si mesmo como um atributo estendido. Depois de copiar o arquivo, você pode definir um valor diferente executando o comando setfattr.

Não vejo uma opção para o rsync ou o dump para fazer isso. Dump é dito para ignorar arquivos com o conjunto de atributos d (não estendido). Esses atributos regulares são definidos com chattr e os atributos são examinados com lsattr . Esses comandos também incluem a configuração de uma versão para um arquivo, caso isso possa ser usado como um substituto para a definição / limpeza de bits sobre a qual você está perguntando. Eu suponho que você poderia fazer a versão alternada entre 0 e 1, se quiser. Veja man chattr e man lsattr e, em particular, a opção -v.

O comando legado dump parece usar um arquivo (/ var / lib / dumpdates) próprio para acompanhar o backup do backup, para que ele possa fazer backup incrementalmente, o que pode ser o tipo de coisa que você estão chegando.

Pode ser útil saber mais sobre o que você está tentando alcançar, caso haja outra abordagem que não envolva programação.

    
por John S Gruber 06.06.2012 / 06:39