Help with sed command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Help with sed command
# 1  
Old 02-18-2014
Help with sed command

Hi, i am novice to shells scripting. need help with one requirement i have

From my application, we extract a flat file in below format
Code:
TYPE_NM|NAME|REV|RELEASE_DT|TEC|CHANGE_STATUS|CHANGE_NM
HON4_SWPart|AMPLXSLTest1|-|2014-02-10T09:09:26|9E991|Released|Onchange|Released|Released

first line is Heading for column
Second line and further down will be content.
I need to search each line and after 5th column (5th | "Pipe") if there any occurrence of "OnChange" then replace contents of line after 5th | with "Released

Ouput

Code:
TYPE_NM|NAME|REV|RELEASE_DT|TEC|CHANGE_STATUS|CHANGE_NM
HON4_SWPart|AMPLXSLTest1|-|2014-02-10T09:09:26|9E991|Onchange

appreciate all your help

Raghu
# 2  
Old 02-18-2014
something like this:

Code:
sed 's/Released|Onchange.*/Onchange/' input.txt

This will not change the file content itself. If this is needed, you may do inplace edit with -i option to sed.
# 3  
Old 02-18-2014
Your specification does not match the output you gave, so it's difficult to supply a solution. Try (and adapt if need be)
Code:
 awk -F\| '/Onchange/ {NF=6; $6="Onchange"}1' OFS=\| file
TYPE_NM|NAME|REV|RELEASE_DT|TEC|CHANGE_STATUS|CHANGE_NM
HON4_SWPart|AMPLXSLTest1|-|2014-02-10T09:09:26|9E991|Onchange

# 4  
Old 02-18-2014
Try :

bit robust

Code:
$ awk '/Onchange/{for(i=6;i<=NF;i++)if($i == "Onchange"){NF=6;$6="Onchange";break}}1' FS=\| OFS=\| file

Tested with

Code:
akshay@Aix:/tmp$ cat file
TYPE_NM|NAME|REV|RELEASE_DT|TEC|CHANGE_STATUS|CHANGE_NM
HON4_SWPart|AMPLXSLTest1|-|2014-02-10T09:09:26|9E991|Released|Onchange|Released|Released
HON4_SWPart|AMPLXSLTest1|Onchange|2014-02-10T09:09:26|9E991|Released|OnAchange|Released|Released

Resulting
Code:
TYPE_NM|NAME|REV|RELEASE_DT|TEC|CHANGE_STATUS|CHANGE_NM
HON4_SWPart|AMPLXSLTest1|-|2014-02-10T09:09:26|9E991|Onchange
HON4_SWPart|AMPLXSLTest1|Onchange|2014-02-10T09:09:26|9E991|Released|OnAchange|Released|Released

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Output of sed command to another sed command

Hi All, I'm relatively new to Unix scripting and am trying to get my head around piping. I'm trying to take a header record from one file and prepend it to another file. I've done this by creating several temp files but i'm wondering if there is a cleaner way to do this. I'm thinking... (10 Replies)
Discussion started by: BigCroyd
10 Replies

2. Shell Programming and Scripting

sed and awk giving error ./sample.sh: line 13: sed: command not found

Hi, I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :- ./sample.sh: line... (12 Replies)
Discussion started by: satishmallidi
12 Replies

3. Shell Programming and Scripting

sed Command

Hello, I'm working with this command which I'm having trouble understanding it: sed -e '1,$ s/SUB/N/g' < $1 > file.txt Where SUB stand for an special character with code in ASCII is 0x1A, notepad read it as a right arrow. Any help will be appreciated. (5 Replies)
Discussion started by: emilioveras
5 Replies

4. Shell Programming and Scripting

sed returns error "sed: -e expression #1, char 18: unterminated `s' command"

Hello All, I have something like below LDC100/rel/prod/libinactrl.a LAA2000/rel/prod/libinactrl.a I want to remove till first forward slash that is outputshould be as below rel/prod/libinactrl.a rel/prod/libinactrl.a How can I do that ??? (8 Replies)
Discussion started by: anand.shah
8 Replies

5. UNIX for Advanced & Expert Users

sed command

Hi..... I'm using sed command for replace the words in a file cat >test.txt My test.txt contains Mary had a little ham Mary fried a lot of spam Jack ate a Spam sandwich Jill had a lamb spamwich Marry had a spicy wich $ sed 's/wich$/mirchi/g' test.txt output is: Mary had a little ham... (24 Replies)
Discussion started by: ksrivani
24 Replies

6. UNIX for Dummies Questions & Answers

sed insert command and variable expansion/command substitution

I know this script is crummy, but I was just messing around.. how do I get sed's insert command to allow variable expansion to show the filename? #!/bin/bash filename=`echo $0` /usr/bin/sed '/#include/ { i\ the filename is `$filename` }' $1 exit 0 (8 Replies)
Discussion started by: glev2005
8 Replies

7. Shell Programming and Scripting

Convert Sed command to perl command

Hello, Can any perl experts help me convert my sed string to perl. I am unsuccessful with this. I have to remove this string from html files OAS_AD('Top'); I have come up with this. However the requirement is in perl. for find in $(find . -type f -name "file1.html") ; do cat $find |... (2 Replies)
Discussion started by: abacus
2 Replies

8. UNIX for Dummies Questions & Answers

some help with the sed command please

hi all, attached you can find a small txt file ( .txt ), GIVEN that past_scheduler="islip" and scheduler="mucf" can somebody please tell me WHY sed 's/-u '$past_scheduler'/-u '$scheduler'/g' .txt > .txt.temp fails ? thanx (3 Replies)
Discussion started by: OneDreamCloser
3 Replies

9. Shell Programming and Scripting

Loop with sed command to replace line with sed command in it

Okay, title is kind of confusion, but basically, I have a lot of scripts on a server that I need to replace a ps command, however, the new ps command I'm trying to replace the current one with pipes to sed at one point. So now I am attempting to create another script that replaces that line. ... (1 Reply)
Discussion started by: cbo0485
1 Replies

10. Shell Programming and Scripting

awk/sed Command : Parse parameter file / send the lines to the ksh export command

Sorry for the duplicate thread this one is similar to the one in https://www.unix.com/shell-programming-scripting/88132-awk-sed-script-read-values-parameter-files.html#post302255121 Since there were no responses on the parent thread since it got resolved partially i thought to open the new... (4 Replies)
Discussion started by: rajan_san
4 Replies
Login or Register to Ask a Question