The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > Shell Programming and Scripting
Google UNIX.COM


Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts here.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
searching files inside directory kylethesir UNIX for Dummies Questions & Answers 4 06-05-2008 10:44 PM
files of size 0 need to be deleted inside a directory namishtiwari Shell Programming and Scripting 2 01-28-2008 01:11 AM
How to see directory and the files inside it. shaan_dmp UNIX for Advanced & Expert Users 4 12-17-2007 02:48 AM
Replacing text inside a directory vatsan UNIX for Advanced & Expert Users 1 03-31-2006 11:34 PM
Directory list inside a directory little_jhon UNIX for Dummies Questions & Answers 6 01-14-2006 10:05 AM

Reply
 
Submit Tools LinkBack Thread Tools Search this Thread Display Modes
  #1  
Old 01-25-2008
Registered User
 

Join Date: Aug 2007
Location: Bangalore
Posts: 288
Directory inside directory problem

hii,

I have to create a directory under the same directory with the date +%a extension like this

BackupLocation=$BackupLocation/$BackupLocation$(date +%w)
but the problem is ---

if backuplocation is abc/dfg then accroding to the above statement it would be

abc/dfg/abc/dfg5

but i want it like this--

abc/dfg/dfg5

kindly give me some suggestions.
Reply With Quote
Forum Sponsor
  #2  
Old 01-25-2008
awk awk is offline
Registered User
 

Join Date: Feb 2007
Posts: 120
filename $(pwd)
in ksh will give you the name of the directory you are in, not the complete path. I believe that is what you want. Add whatever you want to that to make your new directory.
Reply With Quote
  #3  
Old 01-25-2008
Registered User
 

Join Date: Jan 2008
Posts: 8
Hi,

you can do it without any function call by using the Pattern-matching operators (which are faster).

for instance:
me@host> BackupLocation='abc/dfg'
me@host> SubDir=${BackupLocation##*/}
me@host> echo ${SubDir}
dfg
me@host> BackupLocation=${BackupLocation}/${SubDir}$(date +%w)
me@host> echo ${BackupLocation}
abc/dfg/dfg5

(see 'KornShell/Pattern-matching Operators',
[Chapter 4] 4.3 String Operators)

Hope it helps,
Christophe
Reply With Quote
  #4  
Old 01-25-2008
Registered User
 

Join Date: Aug 2007
Location: Bangalore
Posts: 288
Quote:
Originally Posted by awk View Post
filename $(pwd)
in ksh will give you the name of the directory you are in, not the complete path. I believe that is what you want. Add whatever you want to that to make your new directory.
I am creating these directories if they are not existing means run time i am doing that.

suppose i created a directory called--
abc/namsih
then the backup should go to
abc/namish/namish5

but in my case it is like that---
abc/namish/abc/namish5
Reply With Quote
  #5  
Old 01-25-2008
Registered User
 

Join Date: Jan 2007
Location: Boston, USA
Posts: 16
Thumbs up Try this

Try the following i got the exact result that you were expecting.

newdir=`basename $BackupLocation`
BackupLocation=$BackupLocation/$newdir$(date +%w)

################################################
$ > BackupLocation=abc/namsih
$ > newdir=`basename $BackupLocation`
$ > BackupLocation=$BackupLocation/$newdir$(date +%w)
$ > echo $BackupLocation
abc/namsih/namsih5
$ >
################################################

Let me know in case of any concerns.

Thanks,
Karthikeyan.
Reply With Quote
  #6  
Old 01-27-2008
Registered User
 

Join Date: Aug 2007
Location: Bangalore
Posts: 288
Thanks guys for your support.
The problem is resolved now.
Reply With Quote
  #7  
Old 01-27-2008
Registered User
 

Join Date: Jan 2008
Posts: 328
Quote:
Originally Posted by KittyWu View Post
Hi,

you can do it without any function call by using the Pattern-matching operators (which are faster).

for instance:
me@host> BackupLocation='abc/dfg'
me@host> SubDir=${BackupLocation##*/}
me@host> echo ${SubDir}
dfg
me@host> BackupLocation=${BackupLocation}/${SubDir}$(date +%w)
me@host> echo ${BackupLocation}
abc/dfg/dfg5

(see 'KornShell/Pattern-matching Operators',
[Chapter 4] 4.3 String Operators)

Hope it helps,
Christophe
You may not be aware that the link you posted is in all probability a pirated copy of the material it references. O'Reilly & Associates never gives permission, that I am aware of, to publish their copyrighted materials. Out of respect to them you may consider not posting a link to that piratated material in the future. This website probably does not allow it either, as no legitimate website allows links to pirated material.

You would think the administrator of a major institution of higher learning would know better than to upload copyrighted material to the school server and allow it to be accessed via the www.
Reply With Quote
Google The UNIX and Linux Forums
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes




All times are GMT -7. The time now is 06:51 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008. All Rights Reserved.Ad Management by RedTyger Visit The Complex Event Processing Blog

Content Relevant URLs by vBSEO 3.2.0