Need help on replacing every second instance of delimeter.
Scenario:
I want every second "," to replace with "|"
I tried like below
But, it's not working.
Expected output:
TIA
Hello Sumanthsv,
Following may help you in same.
Output will be as follows.
If you doesn't want to read from Input_file then use following command.
Where variable named var has same value which you have posted into your post.
Thanks,
R. Singh
Last edited by RavinderSingh13; 03-01-2016 at 01:04 AM..
Reason: Removed a spelling typo.
This User Gave Thanks to RavinderSingh13 For This Post:
Here are two other ways to do what you seem to want; one with sed and one just using shell built-ins. (Note that in this suggested code the string assigned to var starts with a <tab> followed by a <space> and ends with a <space> followed by a <tab> and all of the spaces and tabs are preserved in the output):
The above script produces the output:
(unfortunately, the CODE tags seem to be stripping off the trailing <space> and <tab> characters on the last line). So too verify that the spaces and tabs were preserved, when that script's output is piped through od -bc, the output is:
This was tested using a Korn shell, but should work with any POSIX-conforming shell.
Note that using printf '%s\n' "$var" instead of echo $var protects you in cases where the expansion of $var contains any <tab> characters; adjacent <space> characters; and depending on what operating system and shell you're using, any backslash characters (\) that could yield unexpected transformations.
This User Gave Thanks to Don Cragun For This Post:
I've a pipe delimited data in a file of size 3GB. if the text data conatins pipe delimiter that will be enclose with double quotes. I have to replace delimiter which exists between double quotes with #%@#%@#%@ using awk or sed. can some one provide a better and efficient solution to me.
The below... (4 Replies)
I have file like below
abc 12 34 45 code
abcdef 451 1 4 code
ghtyggg 4 56 3 code
I need to change this to
abc|12|34|45|code|
abcdef|451|1|4|code|
ghtyggg|4|56|3|code|
I tried replace space with | in sed ... but in the middle some row has... (7 Replies)
Hi Friends,
I have a file1.txt as below
29123973Ç2012-0529Ç35310124Ç000000000004762Ç00010Ç20Ç390ÇÇÇÇF
29123974Ç20120529Ç35310125Ç0000000000046770Ç00010Ç20Ç390ÇÇÇÇF
29123975Ç20120529Ç35310126Ç0000000000046804Ç00010Ç20Ç390ÇÇÇÇF
29123976Ç20120529Ç35310127Ç0000000000044820Ç00010Ç20Ç390ÇÇÇÇF
i have a file2.txt... (4 Replies)
Suppose you have a line like this:
cn=user.blr.ou=blr.india.o=company
The line should be converted like this:
cn=user.blr,ou=blr.india,o=comapny
Was wondering how to do that using shell script.
Please use tags where appropriate, thank you (4 Replies)
test.txt is the dynamic file but some of combination are fix
like below are the lines
;wonder_off =
;wonder_off = disabled
wonder_off =
wonder_off = disabled
the test.txt can content them in any order
#cat test.xt
;wonder_off =
;wonder_off = disabled
wonder_off =
wonder_off =... (5 Replies)
I have a record like the one given below.
010000306551~IN ~N~ |WINDWARD PK|Alpharetta|
If ~ is present more than instance in a line,then I need to delete those instances.
Any ideas?
I am working in Solaris (7 Replies)
I have a file containing about 5 million rows, in the file there are some records which has extra delimiter at random position. (we dont know the positions), now we have to Count the delimeter from each row and if the count of delimeter is not matching then I want to delete those rows from the... (5 Replies)
Hi all,
I have file with following content
...........................
..........TEST..........
..........TEST..........
.....................
.....TEST..........
.....................
.....................
.....TEST..........
I want to replace nth "TEST" with "OK" using... (4 Replies)
Alright, I think I know what I am doing with sed(which probably means I don't). But I cant figure out how to replace just the first occurance of a string. I have tried sed, ed, and grep but can't seem to figure it out. If you have any suggestions I am open to anything! (3 Replies)