Extract path within path


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Extract path within path
# 1  
Old 09-30-2009
Extract path within path

Hi,

I have a environmental variables,

Code:
 
ORACLE_HOME=/u01/oracle/ORCL/db/tech/10.2.0
ORACLE_SID=ORCL

Now I need to create a variable and need to extract some part from ORACLE_HOME. I need to get the path from ORACLE_HOME till ORACLE_SID as /u01/oracle/ORCL. I may need to check also the first occurance of ORCL in the whole path.

Can anybody suggest the best way to do it nawk or cut or substing.

Please advice.

Thanks and Regards,
Sreejit
# 2  
Old 09-30-2009
Code:
ORACLE_HOME=/u01/oracle/ORCL/db/tech/10.2.0
ORACLE_SID=ORCL

echo ${ORACLE_HOME##*${ORACLE_SID}}
echo ${ORACLE_HOME%%${ORACLE_SID}*}

I hope this helps.

bakunin
# 3  
Old 09-30-2009
misunderstood, removed.
# 4  
Old 09-30-2009
You can do it with shell parameter expansion:

Code:
echo ${ORACLE_HOME%%/$ORACLE_SID*}

# 5  
Old 09-30-2009
Thanks all..It was really quick...

I found this one good, echo ${ORACLE_HOME%%/$ORACLE_SID*}

Can you please explain what it does. Is it removing or cut the $ORACLE_SID from $ORACLE_HOME

Regards,
SReejit
# 6  
Old 09-30-2009
Quote:
Originally Posted by sreejitnair123
Thanks all..It was really quick...

I found this one good, echo ${ORACLE_HOME%%/$ORACLE_SID*}

Can you please explain what it does. Is it removing or cut the $ORACLE_SID from $ORACLE_HOME
[...]
Something like:

Quote:
${variable%%pattern}
If the pattern matches the end of the variable's value, delete the longest part that matches
and return the rest.
Check your shell man pages for more information. For example, if you use bash:

Code:
man bash |less -p'Parameter Expansion'

# 7  
Old 09-30-2009
Thanks a lot.

Regards,
Sreejit
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

Makefile missing include path Although the path exists and defined

i have make file which i try to make them generic but it keeps to compline it missing include directory this is the makefile : CXX=g++ CPPFAGS= -Wall -O0 -g -std=c++14 INCLUDES = -I/home/vagrant/libuv/include -Isrc LIBS_DIRS = -L/home/vagrant/libuv/build LDFLAGS=... (7 Replies)
Discussion started by: umen
7 Replies

2. UNIX for Beginners Questions & Answers

Convert Relative path to Absolute path, without changing directory to the file location.

Hello, I am creating a file with all the source folders included in my git branch, when i grep for the used source, i found source included as relative path instead of absolute path, how can convert relative path to absolute path without changing directory to that folder and using readlink -f ? ... (4 Replies)
Discussion started by: Sekhar419
4 Replies

3. UNIX for Advanced & Expert Users

Command to see the logical volume path, device mapper path and its corresponding dm device path

Currently I am using this laborious command lvdisplay | awk '/LV Path/ {p=$3} /LV Name/ {n=$3} /VG Name/ {v=$3} /Block device/ {d=$3; sub(".*:", "/dev/dm-", d); printf "%s\t%s\t%s\n", p, "/dev/mapper/"v"-"n, d}' Would like to know if there is any shorter method to get this mapping of... (2 Replies)
Discussion started by: royalibrahim
2 Replies

4. Shell Programming and Scripting

Generate class path dynamically based on source path

Hi experts, I have multiple file names ending with .jsp located in $SOME_DIR, $SOME_DIR/f1/,$SOME_DIR/f2/test,$SOME_DIR/f3/fa and there are equivalent class files in $SOME_DIR/WEB-INF/classes/_pages,$SOME_DIR/WEB-INF/classes/_pages/_f1,... (0 Replies)
Discussion started by: oraclermanpt
0 Replies

5. Shell Programming and Scripting

Moving files from parent path to multiple child path using bash in efficient way

Hi All, Can you please provide some pointers to move files from Base path to multiple paths in efficient way.Folder Structure is already created. /Path/AdminUser/User1/1111/Reports/aaa.txt to /Path/User1/1111/Reports/aaa.txt /Path/AdminUser/User1/2222/Reports/bbb.txt to... (6 Replies)
Discussion started by: karthikgv417
6 Replies

6. Shell Programming and Scripting

How to extract strings from full path when full path is not fixed

/Path/snowbird9/nrfCompMgrRave1230100920.log.gz:09/20/2010 06:14:51 ERROR Error Message. /Path/snowbird6/nrfCompMgrRave1220100920.log.gz:09/20/2010 06:14:51 ERROR Error Message. /Path/snowbird14/nrfCompMgrRave920100920.log.gz:09/20/2010 06:14:51 ERROR Error Message.... (0 Replies)
Discussion started by: Shirisha
0 Replies

7. UNIX for Dummies Questions & Answers

How to extract the path

I make this script that uses "strace" to trace programs. The script looks for files that the program opens. It looks like this open("/lib/libtermcap.so.2", O_RDONLY) = 3 open("/dev/tty", O_RDWR|O_NONBLOCK|O_LARGEFILE) = 3 I want to extract the path without the quotes, preferably using grep and... (4 Replies)
Discussion started by: Samuel Gordon
4 Replies

8. Shell Programming and Scripting

one liner to extract path from PATH variable

Hi, Could anyone help me in writing a single line code by either using (sed, awk, perl or whatever) to extract a specific path from the PATH environment variable? for eg: suppose the PATH is being set as follows PATH=/usr/bin/:/usr/local/bin:/bin:/usr/sbin:/usr/bin/java:/usr/bin/perl3.4 ... (2 Replies)
Discussion started by: royalibrahim
2 Replies

9. Shell Programming and Scripting

Executing Commands From Non-Standard Path (Changing user's PATH secretely???)

Hi: I have a requirement as below: I have some standard Unix commands modified and kept them in a directory say /usr/clsh/bin. For example I have a script named "ls" kept here which is modified version of "ls" (say it always gives long listing i.e. ls -l). When any user logs on and types... (2 Replies)
Discussion started by: ramesh_samane
2 Replies

10. UNIX for Dummies Questions & Answers

tar extract to new path

I need to extract a file,which contains the path to a new path. sample tar file tar -tfv class.tar | grep client -rw------- 0/1 99 Jan 22 12:46 2004 /usr/openv/netbackup/db/class/mariner/clients -rw------- 0/1 102 Sep 25 11:33 2007... (1 Reply)
Discussion started by: jouuu
1 Replies
Login or Register to Ask a Question