plane 'rm' is faster than with 'find' as find will consume time and 'rm' with '-exec' is slower as it will remove one file at a time...
If you have no other option but to use 'find', I would suggest you use 'xargs' so that all the files will be removed at a time.
With a million files to be removed, xargs rm will not remove all of the files in one invocation of rm. Furthermore, if any of the files to be removed have names containing whitespace characters, single quotes, double quotes, or backslashes, using xargs that way will not work.
If you need to use find to select a subset of files to be removed by name, size, date, etc., use:
Using the find utility's -exec command {} \; executes command once for each selected file. Using the find utility's -exec command {} + executes command with groups of one or more file operands chosen such that system ARG_MAX limits will not be exceeded. (This last form matches what xargs tries to do, but doesn't suffer from the filename limitations that you run into by passing filenames through a pipe and having xargs try to find filename boundaries.)
This User Gave Thanks to Don Cragun For This Post:
Hi
I need to delete more than 3 million files from /var/spool/clientmqueue. When I give the following command to delete the files, I get the error
# pwd
/var/spool/clientmqueue
# rm -f *
/usr/bin/rm: arg list too long
Please tell me how can I delete the files (5 Replies)
Hi Friends,
I am new to this , I am working on AIX system and my scenario is to retrive the files from remote system and remove the files from the remote system after retreving files. I can able to retrieve the files but Can't remove files in remote system. Please check my code and help me out... (3 Replies)
Hi all, I have developed a shell script to copy the files from source to destination and simultaneously to delete the copied files in source. I can copy the files but the files cannot be deleted in source side. (3 Replies)
Dear All,
I have two files both containing 10 Million records each separated by comma(csv fmt).
One file is input.txt other is status.txt.
Input.txt-> contains fields with one unique id field (primary key we can say)
Status.txt -> contains two fields only:1. unique id and 2. status
... (8 Replies)
Hi, I'd like to ask if anybody can help improve my code to move 1 million+ files from a directory to another:
find /source/dir -name file* -type f | xargs -I '{}' mv {} /destination/dir
I learned this line of code from this forum as well and it works fine. However, file movement is kinda... (6 Replies)
Hi,
one of the server, log directory was never cleaned up. We have so many files. I want to remove all the files that starts with dfr* but I get error message when I use the *.
rm qfr*
bash: /usr/bin/rm: Arg list too long
I am trying to write this script but not working.
... (4 Replies)
#!/bin/bash
#
name=$1
type=$2
number=1
for file in ./**
do
if
then
filenumber=00$number
elif
then
filenumber=0$number
fi
tempname="$name""$filenumber"."$type"
if (4 Replies)
Hi
I have task to zip files based on modified time but they are in millions and it is taking lot of time more than 12 hours and also eating up high cpu
is there any other / better way to handle it quickly with less cpu consumptionfind . ! -name \"*.gz\" -mtime +7 -type f | grep -v '/.*/' |... (2 Replies)