Using sed inside shellscript


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Using sed inside shellscript
# 8  
Old 06-01-2016
And, by the way, it wouldn't have worked when entered interactively ("on command line"), either.
# 9  
Old 06-01-2016
Many Thanks Ravinder for the solution
And Thanks Rudic For the explanation.

Ravinder,
The single quote one worked.
Code:
/usr/bin/sed 's/'${a}'/'${b}'/g' /user/iomaint/tempo/gtm/sed/filetosedreplace

and the double quote one is not working as one can expect/ assume.

Thanks
Goutam

---------- Post updated at 08:50 AM ---------- Previous update was at 08:45 AM ----------

Quote:
Originally Posted by RudiC
And, by the way, it wouldn't have worked when entered interactively ("on command line"), either.
Hi RudiC,

I think I am not that good at explaining things/ issues.
Yes in command line , i was just using values in sed command and not using variables.

Will try to be more precise while narrating issues henceforth.
Anyways thanks again for the help. Happy that issue got resolved and most importantly i realized the fault.
# 10  
Old 06-01-2016
How about
Code:
sed "s/$a/$b/g" /user/iomaint/tempo/gtm/sed/filetosedreplace

given neither $a nor $b contain characters with special meaning when used inside regexes.
# 11  
Old 06-01-2016
In more complex expressions, where everything in quotes is too cumbersome, the shell variable references should be in quotes nevertheless (where the quotes must appear in the shell context, so the shell substitutes them and they do not appear in the sed context)
Code:
sed 's/'"${a}"'/'"${b}"'/g' /user/iomaint/tempo/gtm/sed/filetosedreplace

This User Gave Thanks to MadeInGermany For This Post:
# 12  
Old 06-01-2016
Quote:
Originally Posted by RudiC
How about
Code:
sed "s/$a/$b/g" /user/iomaint/tempo/gtm/sed/filetosedreplace

given neither $a nor $b contain characters with special meaning when used inside regexes.
Yes This too works.
Thanks RudiC. Brilliant !!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Use of sed inside perl

$string="test.binary.value"; $toggle="test.binary.value=true"; host=test.server.com my $returnCode = system ( "ssh $host 'cp -p /tmp/testfile /tmp/testfile.bkup; sed -i 's/\$string.*/\$toggle/g' /tmp/testfile'" ); cat testfile test.binary.value=false Scenario: I am trying to... (3 Replies)
Discussion started by: Tuxidow
3 Replies

2. UNIX for Dummies Questions & Answers

Array inside sed

Hi guys Let me at first describe the whole thing that I'm trying to do. Lets say I have 100 files like the following one. Ow 1230 16.000000 -0.834000 16.083957 1.751652398 -17.20094528 -4.450623277 Hw 1231 ... (6 Replies)
Discussion started by: saleheen
6 Replies

3. UNIX for Dummies Questions & Answers

sed inside awk

What I want to do is delete everything upto the last underscore (_) in column 2. awk '{ $2=$(echo $2 | sed 's/.*_//'); print $0}' Sed works fine if I echo the string into it, this doesnt work inside awk. What am I doing wrong? Similarly, how do I store the substring starting with a... (4 Replies)
Discussion started by: senhia83
4 Replies

4. Shell Programming and Scripting

Variable inside sed

Problem: Need to read contents from a file and use that value inside sed as avariable. sample code below. THe below code replaces contents inside file123 for matched string with "$x" value only. but we want the value of x which is read from TextFile.txt to go in there. cat TextFile.txt|while... (3 Replies)
Discussion started by: cvsanthosh
3 Replies

5. Shell Programming and Scripting

sed inside sed for replacing string

My need is : Want to change docBase="/something/something/something" to docBase="/only/this/path/for/all/files" I have some (about 250 files)xml files. In FileOne it contains <Context path="/PPP" displayName="PPP" docBase="/home/me/documents" reloadable="true" crossContext="true">... (1 Reply)
Discussion started by: linuxadmin
1 Replies

6. Shell Programming and Scripting

remove newline between two string with sed command in unix shellscript

I have a file (test.dat) which contains data like this 459|199811047|a |b |shan kar|ooty| 460|199811047|a |bv |gur u|cbe| but I need it like: 459|199811047|a |b |shankar|ooty| 460|199811047|a |b |guru|cbe| While reading the data from this file, I don't want to remove newline from the end of... (4 Replies)
Discussion started by: jcrshankar
4 Replies

7. Shell Programming and Scripting

Need help using sed inside the loop.

Hi, i have written a script. it collects data based on the sql queries executed by it. i have multiple output files. after the output file is made i need to do some cosmetic changes in the files and then store them. i am unable to use sed conditions inside the loop. see below code for... (3 Replies)
Discussion started by: dazdseg
3 Replies

8. UNIX for Dummies Questions & Answers

SED inside while loop

Hi, im having problem creating a loop using my code: aside from the fact that the 1st variable (VAR) does not increment, it loops more than the expected output. for sample purposes, test csv contains 3 lines. #get number of lines in the file lines=$( wc -l < test.csv ) ... (5 Replies)
Discussion started by: paoie
5 Replies

9. Shell Programming and Scripting

sed Problem in Shellscript

Hi, i have a problem with sed i want to substitude a / to ",""," in the following pattern: number/number so if u have a file which contains -> "Streetname 9/8/6" it shouldn't substitude anything, only if it is "Streetname 9/6" to "Streetname 9","","6". Maybe you can help me, i try so many... (5 Replies)
Discussion started by: urukai
5 Replies

10. Shell Programming and Scripting

Using variable inside 'sed'

Dear all, How can I amend the following command to use variable inside 'sed' ? str=`sed -e 's/orig_string/${var}/g' ${sourcefile}` Thanks, Rocky (3 Replies)
Discussion started by: Rock
3 Replies
Login or Register to Ask a Question