Bom dia/tarde/noite!
Estou precisando de uma simples ajuda(para quem entende deve ser simples).
Quero apagar arquivos de uma pasta os quais foram criados a mais de 10 dias, então pesquisei na internet e achei varios comandos, até consegui fazer o teste e meu comando está assim.
find /home/usuario/dados/ -ctime +10 -exec rm -rf {} ;
ele está apagando, mas o problema, é que ao invés de apagar o que está dentro do diretório dados, ele está apagando o próprio diretório dados.
Alguém poderia me dar uma ajuda, como eu posso fazer para que sejam apagados apenas o que está dentro da pasta dados, e não a pasta dados em si?
é só especificar que você quer somente arquivos comuns “regular files”
Geralmente é mais rápido perguntar pro MAN do que pro GOOGLE, se você já tem uma ideia do comando a usar. Veja parte da saída do man find
-type c
File is of type c:
b block (buffered) special
c character (unbuffered) special
d directory
p named pipe (FIFO)
f regular file
l symbolic link; this is never true if the -L option or the -follow option is in effect, unless the symbolic link is broken.
If you want to search for symbolic links when -L is in effect, use -xtype.
s socket
D door (Solaris)
To search for more than one type at once, you can supply the combined list of type letters separated by a comma `,' (GNU exten‐
sion).
Então fica find /home/usuario/dados/ -type f -ctime +10 -exec rm -rf {} ;
3 curtidas