Cut the data with a string that has \ in it


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Cut the data with a string that has \ in it
# 1  
Old 07-06-2018
Cut the data with a string that has \ in it

Hi Team,

Here's the record in a file.

Code:
abc\USER DEFINED\123\345\adf\aq1

Delimiter here is "\USER DEFINED\"

Expected output:
Code:
abc|123\345\adf\aq1

Find "\USER DEFINED\" and replace it with "|".

Can anyone please help us to fix this issue?


Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!

Last edited by RudiC; 07-06-2018 at 04:18 AM.. Reason: Added CODE tags.
# 2  
Old 07-06-2018
Try
Code:
echo 'abc\USER DEFINED\123\345\adf\aq1' | sed 's/\\USER DEFINED\\/|/'
abc|123\345\adf\aq1

This User Gave Thanks to RudiC For This Post:
# 3  
Old 07-06-2018
But I need to pass the value during runtime since it changes over a period of time.

Example:

Code:
Code:
str1=\\Parallel\\'
sed 's/${str1}/|/g' xyz_file.txt


It did not throw any error message or find and replace it not happening.

Can any one please help me to fix this issue?


Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!

Last edited by RudiC; 07-06-2018 at 06:03 PM.. Reason: Added CODE tags.
# 4  
Old 07-06-2018
Try using double quotes in lieu of single ones.
# 5  
Old 07-08-2018
Try this -
Code:
sed 's/'"$str1"'/|/' xyz_file.txt


Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!

Last edited by RudiC; 07-08-2018 at 07:21 PM.. Reason: Added CODE tags.
# 6  
Old 07-08-2018
Expanding a little bit on what RudiC said in post #4 in this thread, shell variable expansions do not occur in single-quoted strings. What chandan.chaman suggested in post #5 would also work, but is more complicated than is needed.

Are backslash characters the only characters that are special in basic regular expressions that might appear in the text you want to replace? (Note that other BRE special characters include the period, opening square bracket (i.e., [), asterisk, circumflex, and dollar sign).

Are you creating the search pattern and replacement strings (so you can escape "special" characters)? Or, are they created by users invoking your script?

Does the pattern you want to replace in your file only occur once in your file? Or, can it appear on several lines in your file? Can it ever occur more than once on a single line in your file (and need to have every occurrence replaced)? If the pattern is to be treated as a literal string and doesn't need to be replaced more than once on any line, you might want to use awk's index() function to find your pattern and use substr() a couple of times to do the replacements instead of using sed's or ed's substitute command or awk's sub() or gsub() function to replace your text.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. What is on Your Mind?

Cut Over to New Data Center and Upgraded OS Done. :)

Three days ago we received an expected notice from our long time data center that they were going dark on Sept 12th. About one and a half hours ago, after three days of marathon work, I just cut over the unix.com to a new data center with a completely new OS and Ubuntu distribution. (22 Replies)
Discussion started by: Neo
22 Replies

2. Shell Programming and Scripting

Cut the string

---------- Post updated at 10:31 AM ---------- Previous update was at 10:28 AM ---------- Hello, I am trying to get the string cut based on the following needs: String1=Submitted request 25574824 for CONCURRENT SQLAP RUAPACTUALSEXT Y RUAPACTUALS122313100616.dat "2013/01/12 14:50:44"... (6 Replies)
Discussion started by: cartrider
6 Replies

3. Shell Programming and Scripting

Cut the string

Hi in a directory i've files having the following name for_category_info_19990101984301 for_catgry_meta_19991111214601 ------- I just want the name till year and month i.e; for_category_info_199901 for_catgry_meta_199911 How can i achieve the above string Thanks (2 Replies)
Discussion started by: smile689
2 Replies

4. Shell Programming and Scripting

Cut and paste data in new file

HI Guys, I have file A: Abc XyZ Abc Xyz Kal Kaloo Abc XyZ Abc Xyz Kalpooo Abc XyZ Abc Xyz Kloo Abc Abc Klooo I want file B Abc XyZ Abc Xyz Kal Kaloo Abc XyZ Abc Xyz Kalpooo Abc XyZ Abc Xyz Kloo File A is now 1 lines Abc Abc Klooo Cut all lines which have xyz... (2 Replies)
Discussion started by: asavaliya
2 Replies

5. UNIX for Dummies Questions & Answers

Data manipulation with cut command

Hi, I need some help with the cut command, can i use it to cut a certain number of characters from string starting from the end. say my string is like this some junk data xyz1@pqr.com xyz2@pqr.com some more junk data I can't exactly say how many email addresses are present in between. But the... (4 Replies)
Discussion started by: poojabhat
4 Replies

6. Shell Programming and Scripting

perl search string for cut data

perl -lne '$/="1H1XXXXX";print $_ if /0001|0002|0003/' data.txt> output.txt more data.txt 1H1XXXXX|0001|Y| aaa bbb ccc 1H1XXXXX|0005|N| bbb g 1H1XXXXX|0001|Y| hhh ddd 222 1H1XXXXX|0002|Y| 444 1H1XXXXX|0002|N| 222 1H1XXXXX|0003|Y| hhhh (3 Replies)
Discussion started by: kittiwas
3 Replies

7. Shell Programming and Scripting

Cut column and edit data

Mar 26 12:32:53 name sshd: 192.168.1.14 Mar 27 12:42:53 name sshd: 192.168.1.14 how to make this data in output as: "Mar 26 12:32:53","name","sshd","192.168.1.14" "Mar 27 12:42:53","name","sshd","192.168.1.14" anyone plzz help me out!!!!!!!!!!!!!! (4 Replies)
Discussion started by: jacky29
4 Replies

8. Shell Programming and Scripting

Cut Data In Bigfile

I want to create new file for 'NO 0004/01' and 'NO 0005/01' only How can i do It for shot time Data FILE Data.txt (Data ~1,000,000 Line) START NO 0001/01 HEAD AAAA BODY1 AAA BODY2 AAA TAIL AAA END START B1 NO 0001/02 HEAD AAAA BODY1 AAA BODY2 AAA BODY3 AAA TAIL AAA (2 Replies)
Discussion started by: kittiwas
2 Replies

9. Shell Programming and Scripting

Cut data and put it in next line

here is my sample file dn: cn=Anandmohan Singh,ou=addressbook,dc=thbs,dc=com objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson cn: Anandmohan Singh givenName: Anandmohan mail: anand_ms@thbs.com mobile: 9986010455 ou: null... (16 Replies)
Discussion started by: namishtiwari
16 Replies

10. Shell Programming and Scripting

read string, check string length and cut

Hello All, Plz help me with: I have a csv file with data separated by ',' and optionally enclosed by "". I want to check each of these values to see if they exceed the specified string length, and if they do I want to cut just that value to the max length allowed and keep the csv format as it... (9 Replies)
Discussion started by: ozzy80
9 Replies
Login or Register to Ask a Question