Remove all the subdirectories except latest 5 inside any given directory


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Remove all the subdirectories except latest 5 inside any given directory
# 8  
Old 01-29-2015
Variants of your quick-and-dirty command
Code:
rm -rf `cd $TGTDIR && ls -t | awk 'NR>5'`

Code:
rm -rf `ls -dt $TGTDIR/* | awk 'NR>5'`

This User Gave Thanks to MadeInGermany For This Post:
# 9  
Old 01-29-2015
Hey Cragon,

I have Linux machine.
TGTDIR conatains no non-directory files.
There are no naming mistakes.

I have a directory which contains the subdirs only. these subdirs are created as a result of a run every hour. As the purging is necessary, I need to retain only the latest five.

Thank you

---------- Post updated at 12:26 PM ---------- Previous update was at 12:19 PM ----------

Hello Ravinder,

Your modified post lists the expected subdirs to be deleted.
But unable to delete when I tried the latter.

Thank you,
# 10  
Old 01-29-2015
I repeat:
What shell are you using?

In what way did the command:rm -rf `ls -t $TGTDIR | awk 'NR>5'` "not work"? If it produces diagnostic messages, show them to us (in CODE tags).
This User Gave Thanks to Don Cragun For This Post:
# 11  
Old 01-29-2015
Hey MadeInGermeny,

Thanks, The code worked.

---------- Post updated at 12:30 PM ---------- Previous update was at 12:28 PM ----------

Hello Mr. Cragun,

I'm using bash shell.
It did not show any error messages either.

Thank you.
# 12  
Old 01-29-2015
Hello Devendra Hupri,

Seems to me a permission issue, could you please confirm/make sure you have proper permissions to the directories,
let us know the error messages in case you have queries.


Thanks,
R. Singh
This User Gave Thanks to RavinderSingh13 For This Post:
# 13  
Old 01-29-2015
One last time:
In what way did the command: rm -rf `ls -t $TGTDIR | awk 'NR>5'` "not work"?
This User Gave Thanks to Don Cragun For This Post:
# 14  
Old 01-29-2015
Hello Mr.Cragun,

When I tried
Code:
rm -rf `ls -t $TGTDIR | awk 'NR>5'`

from any other directory, It was unable to delete, exited normally, without yielding any ,messages with 0 status.

But when I executed the same command after doing a cd to TGTDIR, It worked.

---------- Post updated at 01:20 PM ---------- Previous update was at 12:42 PM ----------

Hello Ravinder,

I'm unable to delete with your
Code:
ls -ltr $TGTDIR | awk '/^d/ {A++;X[++j]=$NF} END{for(i=1;i<=A-5;i++){print "rm -rf " X[i]}}' | sh

though it prints the directories to be deleted.

Thank you.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Getting all the subdirectories inside directories in excel file

Can anyone help me with a short command or script for the below scenario there is a path, /a/b/c/home?? Inside the above path there are number of subdirectories such as one two three four i need to take all the subdirectories inside home?? with full path. i need only one level of... (4 Replies)
Discussion started by: Little
4 Replies

2. Shell Programming and Scripting

Append string to all the files inside a directory excluding subdirectories and .zip files

Hii, Could someone help me to append string to the starting of all the filenames inside a directory but it should exclude .zip files and subdirectories. Eg. file1: test1.log file2: test2.log file3 test.zip After running the script file1: string_test1.log file2: string_test2.log file3:... (4 Replies)
Discussion started by: Ravi Kishore
4 Replies

3. Shell Programming and Scripting

List files with *.i extension in a directory and all its subdirectories + 30days old then remove

I need to write a script to : list files with *.i extension in a directory and all its subdirectories + 30days old, save it in a file and then remove (2 Replies)
Discussion started by: lena keung
2 Replies

4. Shell Programming and Scripting

Compressing all directories inside a directory and remove the uncompressed version

hi pls give me a script to compress all directories inside a directory and remove the original uncompressed version... >> please also tell the single commmand to uncompress all the directories back...whemn needed (2 Replies)
Discussion started by: dll_fpga
2 Replies

5. Shell Programming and Scripting

remove a whole directory tree WITH files inside?

Assume I want to remove a whole directory tree beginning with /foo/bar/ The directory or sub-directories may contain files. The top directory /foo/bar/ itself should not be deleted. rm -f- r /foo/bar does not work because it requires a directory tree without files. How does it work... (3 Replies)
Discussion started by: pstein
3 Replies

6. Shell Programming and Scripting

I'm trying to remove all mp3's in subdirectories

My company has a policy that employees can't keep music on our servers so im looking for a line or script that I can run as part of a cron job that will remove all mp3's in the users home directories. Does anyone have any idea how I might accomplish this? (3 Replies)
Discussion started by: binary-ninja
3 Replies

7. Shell Programming and Scripting

Copying subdirectories of a directory to some other directory and renaming them

Hi, I am a newbie in shell scripting. I have to copy a particular sub-directory (data) from a large no. of directories (all in the same folder) and paste them to another directory ( /home/hubble/data ) and then rename all the subdirectories (data) as the name of its parent directory. please... (8 Replies)
Discussion started by: sholay
8 Replies

8. Shell Programming and Scripting

Move the latest or older File from one directory to another Directory

I Need help for one requirement, I want to move the latest/Older file in the folder to another file. File have the datetimestamp in postfix. Example: Source Directory : \a destination Directory : \a\b File1 : xy_MMDDYYYYHHMM.txt (xy_032120101456.txt) File2: xy_MMDDYYYYHHMM.txt... (1 Reply)
Discussion started by: pp_ayyanar
1 Replies

9. Shell Programming and Scripting

How to find files only inside the subdirectories only?

Hi I have a directory with two subdirectories and also have a code like below to search files modified in last 2 minutes. # ls hello080909.txt inbox outbox # find . -type f -mmin +2 ./inbox/hello2080909.txt ./outbox/hi0080909.txt ./hello080909.txt The above code just searches and... (3 Replies)
Discussion started by: Tuxidow
3 Replies

10. UNIX for Dummies Questions & Answers

How to remove directory with subdirectories and files?

I'm trying to remove several directories which contains sun-dirs and files inside. I used the command rm -r <dirname> But, it always ask "examine file in directory <dirname> yes/no?" line by line. So, i need to write "y" for every line. How can i skip this step and remove all directories with... (9 Replies)
Discussion started by: ppa108
9 Replies
Login or Register to Ask a Question