regarding a script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting regarding a script
# 1  
Old 12-22-2008
Error regarding a script

Hello any body,

I am looking for a help in writing a script to delete a directory as below scenario.

I have a directory called builds in that many directories are there named say 12343,45686,76543(number named )and other name like changelist,maven,logs ,name.txt,and other .sh files etc. I am looking a script which should keep all directories and 4 latest numbered directories.i.e I need to delete numbered directories and keeping latest 4 directories at any time.I have written a script which keeps 4 latest directories or files at any point of time.please look my script. I should modify such a way tht it should not deleted any files or directories other than numbered directory and at the same time I need to have 4 latest numbered directories (it may be 1 months old or what ever) oldest from fifth directory should be removed.

#!/bin/bash




# Scans a directory and deletes all and retains user specfied directory

#Usage: remov.sh /path/ dir number of files to keep





if [ $# -ne 2 ]; then

echo 1>&2 "Usage: $0 dir_path number of files to keep=4 "

exit 1

fi





cd $1

files_in_dir=`ls | wc -l`

files_to_delete=`expr $files_in_dir - $2`

if [ $files_to_delete -gt 0 ]; then

ls -t | tail -n $files_to_delete | xargs rm -rf

#ls -t will list files based on date and tail -n tails the list



#xargs will break the list of arguments into sublists small enough to be acceptable

if [ $? -ne 0 ]; then

echo “An error ocurred deleting the files”

exit 1

else

echo “$files_to_delete file deleted.”

fi

else

echo “Nothing to delete!”

fi
# 2  
Old 12-22-2008
This will list the files/directories with numerals in the name, except the 4 oldest.

ls -ldt *[0-9]* | tail +5 | awk '{ print $9 }'
Padow
# 3  
Old 12-22-2008
regarding a script

it is working fine for me thanks a lot Padow,as i used n option I can keep as many directory as I want cheers

Thanks
# 4  
Old 01-02-2009
Can any body give me a script which should keep n(user defind) latest numbered directory (alpha numeric like 12345,3456)at any point of time,my script works for all files,need to list only numbered files?

Thanks,
Login or Register to Ask a Question

Previous Thread | Next Thread

5 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to block first bash script until second bash script script launches web server/site?

I'm new to utilities like socat and netcat and I'm not clear if they will do what I need. I have a "compileDeployStartWebServer.sh" script and a "StartBrowser.sh" script that are started by emacs/elisp at the same time in two different processes. I'm using Cygwin bash on Windows 10. My... (3 Replies)
Discussion started by: siegfried
3 Replies

2. Shell Programming and Scripting

Shell script works fine as a standalone script but not as part of a bigger script

Hello all, I am facing a weird issue while executing a code below - #!/bin/bash cd /wload/baot/home/baotasa0/sandboxes_finance/ext_ukba_bde/pset sh UKBA_publish.sh UKBA 28082015 3 if then echo "Param file conversion for all the areas are completed, please check in your home directory"... (2 Replies)
Discussion started by: ektubbe
2 Replies

3. UNIX for Dummies Questions & Answers

Calling a script from master script to get value from called script

I am trying to call a script(callingscript.sh) from a master script(masterscript.sh) to get string type value from calling script to master script. I have used scripts mentioned below. #masterscript.sh ./callingscript.sh echo $fileExist #callingscript.sh echo "The script is called"... (2 Replies)
Discussion started by: Raj Roy
2 Replies

4. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

5. Shell Programming and Scripting

create a shell script that calls another script and and an awk script

Hi guys I have a shell script that executes sql statemets and sends the output to a file.the script takes in parameters executes sql and sends the result to an output file. #!/bin/sh echo " $2 $3 $4 $5 $6 $7 isql -w400 -U$2 -S$5 -P$3 << xxx use $4 go print"**Changes to the table... (0 Replies)
Discussion started by: magikminox
0 Replies
Login or Register to Ask a Question