The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > OS Specific Forums > Linux
Google UNIX.COM


Linux RedHat, Ubuntu, SUSE, Fedora, Debian, Mandriva, Slackware, Gentoo linux, PCLinuxOS. All Linux questions here!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
whole word substitution in SED gikay01 Shell Programming and Scripting 7 1 Week Ago 01:51 PM
Unix Variable Reference and Substitution mugsymark Shell Programming and Scripting 8 06-16-2008 02:24 AM
Last word substitution capri_drm Linux 4 06-10-2008 03:19 AM
How to use sed substitution using a $variable for a line containing a word Sangal-Arun Shell Programming and Scripting 4 08-07-2007 04:09 PM
word substitution in csh oprestol Shell Programming and Scripting 1 09-15-2005 08:15 PM

Reply
 
Submit Tools LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 05-07-2008
Registered User
 

Join Date: May 2008
Location: St. Louis
Posts: 70
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
word substitution in unix

Hi I am trying to substitute 2 words on the same line with _S02 as suffix. Like this .

IN "TSOPS09" INDEX IN "TSOPIX09" ;

to

IN "TSOPS09_S02" INDEX IN "TSOPIX09_S02" ;

i used the following code to make the change , it works fine for first substitution not the second one .

TBLSP_NM=` cat db2look_FACT_PHYSICIAN.ddl | grep -i TSOP | awk '{print $2}' | cut -d '"' -f 2 `
echo $TBLSP_NM
sed -e 's/'${TBLSP_NM}'/'${TBLSP_NM}'_S02/g' db2look_FACT_PHYSICIAN.ddl

the output comes as

IN "TSOPS09_S02" INDEX IN "TSOPIX09" ;


Any help is appreciated !
Reply With Quote
Forum Sponsor
  #2 (permalink)  
Old 05-07-2008
vgersh99's Avatar
Moderator
 

Join Date: Feb 2005
Location: Boston, MA
Posts: 2,983
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
Code:
echo 'IN "TSOPS09" INDEX IN "TSOPIX09" ; ' | sed 's/"\([^"][^"]*\)"/"\1_S02"/g'
Reply With Quote
  #3 (permalink)  
Old 05-07-2008
robotronic's Avatar
Can I play with madness?
 

Join Date: Apr 2002
Location: Italy
Posts: 369
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
vgersh preceded me, anyway another one:

Code:
sed 's/\(TSOP[^"]*\)/\1_S02/g' db2look_FACT_PHYSICIAN.ddl
Reply With Quote
  #4 (permalink)  
Old 05-07-2008
Registered User
 

Join Date: May 2008
Location: St. Louis
Posts: 70
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
Thanks a lot ! You guys rock !!!
Reply With Quote
  #5 (permalink)  
Old 05-07-2008
Registered User
 

Join Date: May 2008
Location: St. Louis
Posts: 70
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
Hi,
I ahve next question . I have script which gets info from db2 engine.
The script is

cat sample_substitute.sh
CNTR_NM=`db2 -x "select CONTAINER_NAME ,usable_pages from table( SNAPSHOT_CONTAINER('TST103',-1)) as SNAPSHOT_CONTAINER, syscat.tablespaces where
tablespace_name = tbspace and tbspacetype = 'D' and tbspace='TSOPS06'" `
echo ${CNTR_NM}

The output is like this

/dmpath/dmtiadm1/db2fs1p00/tsops06 2128

But I am trying to get the output like this

'/dmpath/dmtiadm1/db2fs1p00/tsops06' 2128

i.e. the string inside the single quote.

Thanks again in advance !
Reply With Quote
  #6 (permalink)  
Old 05-08-2008
robotronic's Avatar
Can I play with madness?
 

Join Date: Apr 2002
Location: Italy
Posts: 369
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
You may use a thing like:

Code:
echo "${CNTR_NM}" | sed "s/\([^ ]*\)/'\1'/1"
or

Code:
echo "${CNTR_NM}" | awk '{ printf("\047%s\047 %s\n", $1, $2) }'

On Solaris, use nawk instead of awk.
Reply With Quote
  #7 (permalink)  
Old 05-14-2008
Registered User
 

Join Date: May 2008
Location: St. Louis
Posts: 70
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Reddit! Stumble this Post!Spurl this Post!
i started a new thread for next problem

Last edited by capri_drm; 05-14-2008 at 12:28 PM. Reason: starting a new thread
Reply With Quote
Google UNIX.COM
Reply

Tags
solaris

Thread Tools
Display Modes


The 50 most popular UNIX and Linux searches.
Google Search Cloud for The UNIX and Linux Forums
"inappropriate ioctl for device" 421 service not available, remote server has closed connection ascii eof autosys awk trim bash eval bash exec bash for loop boot: cannot open kernel/sparcv9/unix close_wait command copy/move folder in unix curses.h cut command in unix dead.letter find grep find null character in a unix file grep multiple lines grep or grep recursive grep unique inaddr_any inappropriate ioctl for device logrotate.conf lynx javascript mailx attachment mget mtime perl array length ping port remove first character from string in k shell replace space by comma , perl script scp recursive segmentation fault(coredump) sftp batch sftp script snoop unix stale nfs file handle syn_sent tar exclude unix unix com unix forum unix forums unix interview questions unix mtime unix simulator unix.com vi tab size vi+substitute+end+of+line+character while loop within while loop shell script


All times are GMT -7. The time now is 12:55 PM.


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

Content Relevant URLs by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101