Issue with SED command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Issue with SED command
# 1  
Old 10-15-2012
Issue with SED command

I have a file that contains lines like this:
Code:
allgroups: cn=Role1,cn=groups,o=xyz,st=mn,c=us
allgroups: cn=Role1,cn=groups,o=xyz,st=mn,c=us

I want to remove the string :

Code:
,cn=groups,o=xyz,st=mn,c=us

and so I tried to use SED. i tried to assign it to a variable and use it:

Code:
sRemStr1=",cn=groups,o=xyz,st=mn,c=us"
sed 's/$sRemStr1//g' ${sTmpPrefix}.Orig  > ${sTmpPrefix}.txt

But it doesnt work. It works only when I give like this:

Code:
sed 's/,cn=groups,o=xyz,st=mn,c=us//g' ${sTmpPrefix}.Orig  > ${sTmpPrefix}.txt

Not sure what is the problem. Pls help.

Kumar
# 2  
Old 10-15-2012
You have to use double quotes instead
Quote:
sRemStr1=",cn=groups,o=xyz,st=mn,c=us"
sed "s/$sRemStr1//g" ${sTmpPrefix}.Orig > ${sTmpPrefix}.txt
# 3  
Old 10-15-2012
Problem is not with sed. Problem is with your shell. Variable substitution occurs in the shell and the result is then fed to the command you want to run; so, you need to allow the shell to do variable substitution in order for the command to work. Single quotes inhibit variable substitution, but double quotes allow it. In conclusion, as sol_nov accurately says, use double quotes.
# 4  
Old 10-16-2012
Thank you guys for the tip. It works.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Issue with sed command

Hi, I have a script that replaces one string with the other in all files under the specified directory. !/bin/bash # **************** Change Variables Here ************ startdirectory="/opt/app/properties/tmp_new" searchterm="Oracle/Middleware/" replaceterm="" #... (1 Reply)
Discussion started by: mohtashims
1 Replies

2. Shell Programming and Scripting

sed command issue in script

Hi, I am using sed command to extract data from my log file for a certain time interval. From and To "time" are my input arguments. Now if i use the sed command on command line. I get the desired results and If i use it in script.It fails. sed command as command line: sed -n '/04-Mar-2015... (6 Replies)
Discussion started by: oberoi1403
6 Replies

3. UNIX for Dummies Questions & Answers

Issue with sed command

Hi, I want to use a code like sed -n "1,9988p" filename | wc -l I tried from=1 till=9988 sed -n "/$from/,/$till/p" filename |wc -l Issue: sed -n "1,9988p" filename | wc -l -- Returns 9988 rows But sed -n "/$from/,/$till/p" filename |wc -l # Returns > 9988 rows(Complete file) I... (2 Replies)
Discussion started by: Gurkamal83
2 Replies

4. Shell Programming and Scripting

Issue in using variable within sed command

Hi All, I am trying to use a variable within the sed command but I am not able to get the output. When I am using the following command (without variable) its working fine: sed -n '/2011\/12\/10 18:11:11./,$p' < Log.txt > Delta_Log.txt But when I am putting the value 2011\/12\/10... (4 Replies)
Discussion started by: acoomer
4 Replies

5. Shell Programming and Scripting

Sed command issue in linux

I ran one the script in debug mode in linux and have a problem ret='$prmAttunityUser=ais' Now i need to remove $ from this '$prmAttunityUser=ais' so i had added a sed command like this sed 's/$//g' but its not working could you all please help me with an alternate command I want the output... (3 Replies)
Discussion started by: vee_789
3 Replies

6. Shell Programming and Scripting

Issue with Sed command

I need to search for a keyword UTF-16 in a list of files if that keyword is found then i need to convert the file to UTF-8 format using iconv command. After this i should substitute the UTF-16 keyword inside the file to UTF-8. Please suggest how to do this in shell scripting. (11 Replies)
Discussion started by: Shruthi8818
11 Replies

7. UNIX for Dummies Questions & Answers

Sed Command Issue

Hello, I want to remove the / found when executing the date command. When I use: date +%D | sed 's/\///' I get: 1105/09 I tried: date +%D | sed 's/\*$///' I need to remove all / from the date command, but it does not seem to work (5 Replies)
Discussion started by: mojoman
5 Replies

8. Shell Programming and Scripting

sed command issue

Hi everybody, I have come across a typical problem: I need to use sed command to replace an apostrophe but it is saying no match found in the error sed -e 's/`/'/g' ...but it is not working. Can you please tell me how to use this apostrophe in this sed command please. Thanks. Rubin (8 Replies)
Discussion started by: RubinPat
8 Replies

9. UNIX Desktop Questions & Answers

Issue with sed command

Hi, I have to replace the character AL2 with AL16 which I have in one of my text file . I used the sed command like this sed 's/sed 's/AL2/AL16/g' test_carr.dat>test_carr1.dat But it is not replacing this value to the output file. The test_carr.dat file contains data like this cat... (1 Reply)
Discussion started by: kavithakuttyk
1 Replies

10. Shell Programming and Scripting

Issue with Sed Command

Hello , I am trying to replace a word :: complete to Failed . work: complete Sed command which i am using is given below :: sed s/work: complete/Failed/g temp1.txt > temp2.txt (Sed command is grabled if i use the above .. because of space which is there between work: and complete. I... (6 Replies)
Discussion started by: raghav1982
6 Replies
Login or Register to Ask a Question