Replace several numbers with respective tag and make a single file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Replace several numbers with respective tag and make a single file
# 1  
Old 10-14-2010
Tools Replace several numbers with respective tag and make a single file

Dear All,


I have a final output files as

HTML Code:
736645|0|
13879|1|
495563|10|
127933|14|
4975|16|
49038|6|
53560|7|
135115|8|
178857|9|

Now I want to replace second column with respective tag as per the value

for e.g

0------- Success
1------- Failure
10------ unknown
.
.
.
.
.

and lastly make a single files that contains output as

HTML Code:
736645|Success|
13879|Failure|
495563|Unknown|
127933|etc.|
4975|etc|
49038|etc|
53560|etc|
135115|etc|
178857|etc|

I use sed command but it replace correclty but then I am unable to make it in a single files

command is as

cat a.txt | sed 's/|0|/|Succes|/g' > test.wri



Please helpSmilie
# 2  
Old 10-14-2010
Code:
awk 'BEGIN{FS=OFS="|"}{$2=(!$2)?"Success":((($2==1)?"Failure":(($2==10)?"Unknown":"etc")))}1' file
736645|Success|
13879|Failure|
495563|Unknown|
127933|etc|
4975|etc|
49038|etc|
53560|etc|
135115|etc|
178857|etc|

# 3  
Old 10-14-2010
Try this,
Code:
awk -F"|" 'BEGIN {
        error[0] = "Success"
        error[1] = "Failure"
        error[2] = "Fail"
        error[3] = "Error3"
        error[4] = "Error4"
        error[5] = "Error5"
        error[6] = "Error6"
        error[7] = "Error7"
        error[8] = "Error8"
        error[9] = "Error9"
        error[10] = "Unknown"
}
{if (error[$2]){print $1 FS error[$2] FS}else{print $0}}'  inputfile

# 4  
Old 10-14-2010
Code:
perl -i -pe '%h=qw(0 Success 1 Failure 10 unknown); /\|(\d+)\|/; $k=$1; ($h{$k})? s/\|$k\|/\|$h{$k}\|/g : s/\|$k\|/\|etc|/g;'  file

# 5  
Old 10-14-2010
bash code:
  1. ERR=( Success Failure Fail Error3 Error4 Error5 Error6 Error7 Error8 Error9 Unknown Error11 Error12 Error13 Error14 Error15 Error16 )
  2. while IFS='|' read A B
  3. do
  4.    echo "$A|${ERR[$B]}|"
  5. done <file
result:
Code:
736645|Success|
13879|Failure|
495563|Unknown|
127933|Error14|
4975|Error16|
49038|Error6|
53560|Error7|
135115|Error8|
178857|Error9|

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Display multiple words into a single td tag

awk 'BEGIN{print "<table>"} {print "<tr>"; for ( i=1;i<NF;i++) print " <td>" $I "</td>"; print "</tr>"} END{print " </table>"}' <file name > (6 Replies)
Discussion started by: Himanshu1
6 Replies

2. Shell Programming and Scripting

Use awk to replace numbers in a file with a column from another file

Hello, I am trying to make a awk code that will take 2 files, a txt file like this : 1 1 88 c(1:38, 42, 102) 2 2 128 c(39:41, 43:101, 103:105, 153, 155:189, 292, 344:369) 3 3 84 c(190:249, 603, 606:607, 609:629) 4 4 12 ... (8 Replies)
Discussion started by: nastaziales
8 Replies

3. Shell Programming and Scripting

How to replace multiple "&nbsp;" entry with in <td> tag into single entry using sed?

I have the input file like this. Input file: 12.txt 1) There are one or more than one <tr> tags in same line. 2) Some tr tags may have one <td> or more tna one <td> tags within it. 3) Few <td> tags having "<td> &nbsp; </td>". Few having more than one "&nbsp;" entry in it. <tr> some td... (4 Replies)
Discussion started by: thomasraj87
4 Replies

4. Shell Programming and Scripting

How to make multiple small file out of a single file?

Hi, I have a file that consist of around six million line, now the task is to divide this file into 12 small file so that each file would have half a million lines in it. Thanks. (3 Replies)
Discussion started by: mukulverma2408
3 Replies

5. Shell Programming and Scripting

find all numbers > x and replace with y within a file

How would I do this? How could i use <> symbols for numbers in the find/replace code below? perl -pi -e 's/test/tst/' OR is there a better way? 100 5000 2 432 4 2 33 4 5 6 65 300 301 needs to be: 100 300 2 300 4 2 33 4 5 6 65 300 300 also it might not always need spaces... i... (12 Replies)
Discussion started by: herot
12 Replies

6. Shell Programming and Scripting

Find all .htaccess files and make a backup copy in respective directories

Hey guys, I need to know how to locate all .htaccess files on the server and make a backup of them in the folder they reside before I run a script to modify all of them. So basically taking dir1/.htaccess and copying it as dir1/.htaccess_bk dir2/.htaccess copying as dir2/.htaccess_bk... (5 Replies)
Discussion started by: boxx
5 Replies

7. Shell Programming and Scripting

Search for multiple string and replace with respective values

Hi, Can anyone help me to search for multiple strings within specified position and replace with respective string value. For example I need to search the string from the position 11 to 20 and if it contain ABC and then replace it by BCDEFGHIJ ... find AABZSDJIK and replace with QWE. and... (4 Replies)
Discussion started by: zooby
4 Replies

8. Shell Programming and Scripting

Addition of all the numbers in a single file

Hi All , Want to know the "sum" of all the digits in below file called "/sample" .Could some one please let me know the script either command . cat /sample 12 34 23 23 Best Regards, Chinni . (5 Replies)
Discussion started by: chinni-script
5 Replies

9. AIX

How to replace many numbers with one number in a file

How to replace many numbers with one number in a file. Many numbers like 444565,454678,443298,etc. i want to replace these with one number (300).Please halp me out. (2 Replies)
Discussion started by: vpandey
2 Replies

10. Shell Programming and Scripting

to replace one character by numbers in a file

suppose u have a file aas P-H 123 gdg O-U 223 hdy I-Y 12 fgd K-O 333 ssa L-P 32 output shud be like that aas P123H gdg O223U hdy I12Y fgd K333O ssa L32P thanks (7 Replies)
Discussion started by: cdfd123
7 Replies
Login or Register to Ask a Question