
24th May 2006, 16:48
|
|
Junior Member
|
|
Join Date: May 2006
Posts: 2
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Need help for writing shell script
I need some help in writing a shell script, it basically need to delete all my older files , the file name structure is like that :
song100000732200506114828.3gp
song100000732200506124528.3gp
song100000732200506214528.3gp
.....................
.....
· song – constant prefix.
· 100000732 – 9 digits unique key [per msisdn]
· 200506114528 – time stamp [DDMMYYHHMISS format]
The unique key is the same for each play list of specific msisdn.
The only thing that changes is the timestamp.
so i need for each unique key (there are more then one) the news file will remain
Can anyone help me?
thanks
|

11th June 2006, 10:40
|
|
Junior Member
|
|
Join Date: Jun 2006
Posts: 11
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Quote:
|
Originally Posted by erez
I need some help in writing a shell script, it basically need to delete all my older files , the file name structure is like that :
song100000732200506114828.3gp
song100000732200506124528.3gp
song100000732200506214528.3gp
.....................
.....
· song – constant prefix.
· 100000732 – 9 digits unique key [per msisdn]
· 200506114528 – time stamp [DDMMYYHHMISS format]
The unique key is the same for each play list of specific msisdn.
The only thing that changes is the timestamp.
so i need for each unique key (there are more then one) the news file will remain
Can anyone help me?
thanks
|
Do you need it in shell? Or can it be scripted in a real language.
|

15th June 2006, 18:11
|
|
Junior Member
|
|
Join Date: May 2006
Posts: 2
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
i need it in a shell
|

16th June 2006, 06:51
|
|
Junior Member
|
|
Join Date: Jun 2006
Location: India
Posts: 4
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
>> so i need for each unique key (there are more then one) the news file will remain
I don't get what exactly you want to do..May be you could have been more clear !!
Well the following script extracts each field (key and date-time) from the file name..
Code:
#!/bin/bash
ext=".3gp" #put the file extension here
for f in *.3gp #repeats of for each file in the directory
do
#extract the filename without extension
base=`basename $f $ext`
echo $base
#extract the prefix
pref=`echo $base | cut -c 5-13 -`
echo $pref
#extract date and time
dtime=`echo $base | cut -c 14-25 -`
echo $dtime
done
|

16th June 2006, 15:23
|
|
Junior Member
|
|
Join Date: Nov 2005
Posts: 1
Thanks: 0
Thanked 0 Times in 0 Posts
|
|
Quote:
|
Originally Posted by erez
I need some help in writing a shell script, it basically need to delete all my older files , the file name structure is like that :
song100000732200506114828.3gp
song100000732200506124528.3gp
song100000732200506214528.3gp
|
I assume you want to remove unused stuff older than X days. Instead of checking the timestamp within the filenames you could just do something like this:
find /my/directory -name song*3gp -ctime 50 -print| rm -f
which would delete everything min 50 days old
You can test that it picks the right files with something like:
find /my/directory -name song*3gp -ctime 50 -print| ls -l
Cheers
flim
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT +2. The time now is 01:10.
|
Recent comments
16 hours 38 min ago
21 hours 54 min ago
22 hours 5 min ago
22 hours 13 min ago
23 hours 15 min ago
1 day 1 hour ago
1 day 3 hours ago
1 day 4 hours ago
1 day 4 hours ago
1 day 5 hours ago