Scripts para Remover arquivos AIX

1. Scripts para Remover arquivos AIX

Marcos Antonio Jorgete
ratozzy

(usa Outra)

Enviado em 11/10/2016 - 10:33h

Olá pessoal,

estou com problema aqui e gostaria de um Help.
Criei um script para fazer uma limpeza em alguns diretórios, que está em uma lista, porem, por ter muitos arquivos na pasta, me retorna a seguinte informação: bash: /usr/bin/ls: Arg list too long
segue o Script:

for DIR_EXPURGO in `cat lista_diretorio.lst`
do
for ARQV in `find $DIR_EXPURGO/*.txt -mtime +90`
do
rm $ARQV
done
done


  


2. Re: Scripts para Remover arquivos AIX

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 11/10/2016 - 11:12h

ratozzy escreveu:

Olá pessoal,

estou com problema aqui e gostaria de um Help.
Criei um script para fazer uma limpeza em alguns diretórios, que está em uma lista, porem, por ter muitos arquivos na pasta, me retorna a seguinte informação: bash: /usr/bin/ls: Arg list too long
segue o Script:

for DIR_EXPURGO in `cat lista_diretorio.lst`
do
for ARQV in `find $DIR_EXPURGO/*.txt -mtime +90`
do
rm $ARQV
done
done


Bom dia, ratozzy.
Segue:
for DIR_EXPURGO in $(cat lista_diretorio.lst);do
find $DIR_EXPURGO/*.txt -mtime +90 -exec rm {} \;
done


Att.:
marcelo oliver



3. Re: Scripts para Remover arquivos AIX

Marcos Antonio Jorgete
ratozzy

(usa Outra)

Enviado em 11/10/2016 - 11:18h

msoliver escreveu:

ratozzy escreveu:

Olá pessoal,

estou com problema aqui e gostaria de um Help.
Criei um script para fazer uma limpeza em alguns diretórios, que está em uma lista, porem, por ter muitos arquivos na pasta, me retorna a seguinte informação: bash: /usr/bin/ls: Arg list too long
segue o Script:

for DIR_EXPURGO in `cat lista_diretorio.lst`
do
for ARQV in `find $DIR_EXPURGO/*.txt -mtime +90`
do
rm $ARQV
done
done


Bom dia, ratozzy.
Segue:
for DIR_EXPURGO in $(cat lista_diretorio.lst);do
find $DIR_EXPURGO/*.txt -mtime +90 -exec rm {} \;
done


Att.:
marcelo oliver


Já tentei dessa forma e também com a sintaxe abaixo, e tenho o mesmo retorno.
find $DIR_EXPURGO/*.txt -mtime +90 | xargs rm -rf;

/usr/bin/find: Arg list too long


4. Re: Scripts para Remover arquivos AIX

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 11/10/2016 - 14:33h

ratozzy escreveu:

msoliver escreveu:

ratozzy escreveu:

Olá pessoal,

estou com problema aqui e gostaria de um Help.
Criei um script para fazer uma limpeza em alguns diretórios, que está em uma lista, porem, por ter muitos arquivos na pasta, me retorna a seguinte informação: bash: /usr/bin/ls: Arg list too long
segue o Script:

for DIR_EXPURGO in `cat lista_diretorio.lst`
do
for ARQV in `find $DIR_EXPURGO/*.txt -mtime +90`
do
rm $ARQV
done
done


Bom dia, ratozzy.
Segue:
for DIR_EXPURGO in $(cat lista_diretorio.lst);do
find $DIR_EXPURGO/*.txt -mtime +90 -exec rm {} \;
done


Att.:
marcelo oliver


Já tentei dessa forma e também com a sintaxe abaixo, e tenho o mesmo retorno.
find $DIR_EXPURGO/*.txt -mtime +90 | xargs rm -rf;
/usr/bin/find: Arg list too long

--------------------------------------------------------------------------------------------------------
Boa tarde, ratozzy.
Segue:
for DIR_EXPURGO in $(cat lista_diretorio.lst);do
find "$DIR_EXPURGO" -maxdepth 1 -iname "*.txt" -mtime +90 -exec rm {} \;
done





5. Re: Scripts para Remover arquivos AIX

Marcos Antonio Jorgete
ratozzy

(usa Outra)

Enviado em 11/10/2016 - 15:20h

msoliver escreveu:

ratozzy escreveu:

msoliver escreveu:

ratozzy escreveu:

Olá pessoal,

estou com problema aqui e gostaria de um Help.
Criei um script para fazer uma limpeza em alguns diretórios, que está em uma lista, porem, por ter muitos arquivos na pasta, me retorna a seguinte informação: bash: /usr/bin/ls: Arg list too long
segue o Script:

for DIR_EXPURGO in `cat lista_diretorio.lst`
do
for ARQV in `find $DIR_EXPURGO/*.txt -mtime +90`
do
rm $ARQV
done
done


Bom dia, ratozzy.
Segue:
for DIR_EXPURGO in $(cat lista_diretorio.lst);do
find $DIR_EXPURGO/*.txt -mtime +90 -exec rm {} \;
done


Att.:
marcelo oliver


Já tentei dessa forma e também com a sintaxe abaixo, e tenho o mesmo retorno.
find $DIR_EXPURGO/*.txt -mtime +90 | xargs rm -rf;
/usr/bin/find: Arg list too long

--------------------------------------------------------------------------------------------------------
Boa tarde, ratozzy.
Segue:
for DIR_EXPURGO in $(cat lista_diretorio.lst);do
find "$DIR_EXPURGO" -maxdepth 1 -iname "*.txt" -mtime +90 -exec rm {} \;
done




O -maxdepth não funciona no AIX
find: bad option -maxdepth


6. Re: Scripts para Remover arquivos AIX

euteste da silva
foxbit3r

(usa Solaris)

Enviado em 11/10/2016 - 15:32h

Antes de mais nada aqui é um grupo de Linux e não Unix AIX.
O comando find que você está usando é do UNIX AIX têm opções diferentes do GNU find encontrado no Linux, apesar de ambos terem o mesmo nome e fazer localização de arquivos, logos as opções fornecidas por outros participantes do forum não vai funcionar.
Segundo que o seu comando find foi montado de maneira errada.


find /path/to/files -name \*.txt


Terceiro, existe um limite de quantidade máxima de argumentos que pode ser passado para o comando.


getconf ARG_MAX


Pode tentar esse código e implementar o restante.



for i in `ls`;
do
echo $i
done



Obs. Korn Shell/ C-Shell/Bourne shell são inferiores ao Bash. Eu sugiro que você começe dar uma procurada em documentos de Korn Shell.

GNU não é Unix!
Até









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts