By Marcos Oliveira,

Procurando e movendo, removendo, renomeando e mudando permissão

PROCURANDO E MOVENDO, REMOVENDO, RENOMEANDO, MUDANDO PERMISSÃO,… : FIND , EXEC OU XARGS

Precisando automatizar algumas tarefas e com a necessidade de agilizá-las (remover, renomear, mudar permissão, entre outras) e ainda se tratando de muitos arquivos, podemos facilitar muito este trabalho utilizando apenas uma linha.

Aqui vou mostrar uma das tarefas mais simples que o find pode ajudar, ferramenta poderosa quando se sabe usar todas as suas opções. Fazendo-se buscas no Google pode-se achar muita coisa.

Problemas e Soluções

1 - Encontrar arquivos .jpg e movê-los para o diretório /meudir: Com exec:

find /home/$USER/ -name *.jpg -exec mv {} /meudir \;

2 - Encontrar arquivos que possuem a palavra terminal de extensão .jpg e movê-los para o diretório /meudir: Com xargs::

find /home/$USER/ -name *terminal*.jpg -print0 | xargs -0 -i mv {} /meudir

3 - Encontrar arquivos que possuem a palavra Terminal(T maiúsculo) e terminal (t minúsculo) de extensão .jpg e removê-los: Com exec:

find /home/$USER/ -type f -name *[Tt]erminal*.jpg -exec rm {} \; 

4 - Mudando as permissões somente dos diretórios: Com exec:

find /home/* -type d -exec chmod 775 '{}' \; 

5 - Renomeando as extensões dos arquivo que estiverem em maiúsculas: Assim:

find . -name '.*' -prune -o -exec rename 's/\.jpg$/\.JPG/i' {} + 

6 - Mover arquivos com mais de 15 dias criados: Assim:

find / -ctime +15 -exec mv {} /maisde15 \;

Várias formas, vários tipos e vários sabores!

Links Úteis

http://www.cyberciti.biz/faq/linux-unix-bsd-xargs-construct-argument-lists-utility/

http://superuser.com/questions/529742/how-can-i-move-files-with-xargs-in-linux

http://unix.stackexchange.com/questions/83711/moving-files-with-find-xargs-target-is-not-a-directory

http://unix.stackexchange.com/questions/90886/how-can-i-find-files-and-then-use-xargs-to-move-them

http://www.vivaolinux.com.br/dica/Utilizando-find-+-exec-e-agilizando-tarefas

http://www.vivaolinux.com.br/topico/Debian-para-iniciantes/Comando-find-com-mv



Sobre o Autor

Marcos Oliveira

A alegria está na luta, na tentativa, no sofrimento envolvido e não na vitória propriamente dita. A força não provém da capacidade física. Provém de uma vontade indomável.
Mahatma Gandhi


Dê você também uma Contribuição
Compartilhe nas suas Redes Sociais!




Inscreva-se no Nosso Canal do Youtube



Curso Extremamente Avançado em Shell Script Bash

Você irá descobrir técnicas avançadas de escrever em Shell Script. Como criar instaladores para distribuições Linux, Animações, Documentações, além de tudo sobre Processos em sistemas tipo UNIX, detalhes sobre Comandos Avançados e Muito Mais !




Crie Sua Própria Promoção

Customize seus Pacotes de Treinamentos obtendo descontos muito em conta!