Sponsored Content
Top Forums Shell Programming and Scripting Check Character matching from pos 7-15 to pos 211-219 if True then replace 211-219 with spaces Post 302709451 by Don Cragun on Wednesday 3rd of October 2012 09:00:09 AM
Old 10-03-2012
Quote:
Originally Posted by lancesunny
Script for if characters from positions 7-15 are matching with characters from position 211-219 then replace all char from 211-219 with 9 space.
Total length of record is 413.

Before:
RR 201 123456789 00599 0001230111 +00000000123 XXX 100111......123456789 ..............................................................................1
SS 201 00456 00599 0001230111 +00000000123 XXX 100222......12345..............................................................................2
TT 201 234567890 00599 0001230111 +00000000123 ABC 100333......234567890 ..............................................................................3

Hoping for After:
RR 201 123456789 00599 0001230111 +00000000123 XXX 100111...... ..............................................................................1
SS 201 00456 00599 0001230111 +00000000123 XXX 100222......12345..............................................................................2
TT 201 234567890 00599 0001230111 +00000000123 ABC 100333...... ..............................................................................3

where
1st Record position 7-15 & 211-219 Value=123456789 are matching and therefore we need to replace position 211-219 with 9 space characters
1st Record position 7-15 & 211-219 Value=234567890 are matching and therefore we need to replace position 211-219 with 9 space characters.

Any help on this will be appreciated.
Thanks in advance.
Please use code tags when showing input and output strings. You say that the total record length of each of your input and output records is 413, but the three input records you have given us contain 152, 143, and 152 bytes, respectively (not counting the terminating <newline> character) and each of your three output records contain 143 bytes.

You also give two conflicting descriptions of what is in the 1st record.

Making a guess at what your input really looks like, the following may work:
Code:
awk '{if(length() > 220 && substr($0,7,9) == substr($0,211,9))
                printf("%s         %s\n", substr($0,1,210), substr($0,220))
        else    print}' input

 

3 More Discussions You Might Find Interesting

1. What is on Your Mind?

This Weeks Lottery - Jackpot Now 219,500 Bits

If you want to win some Bits, the jackpot for tomorrow's drawing is up to 219,500 Bits Lottery tickets are only 100 Bits :D (0 Replies)
Discussion started by: Neo
0 Replies

2. Homework & Coursework Questions

POS 420 Week 4 IA

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: <LI style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo1; tab-stops: list .5in" class=MsoNormal>In your week4... (0 Replies)
Discussion started by: smiley76112
0 Replies

3. Shell Programming and Scripting

if characters from positions 7-15 are matching 219 then replace al

Script for if characters from positions 7-15 are matching with characters from position 211-219 then replace all char from 211-219 with 9 space. Total length of record is 420. Here is the specification of the data in file. Position Field Data Type... (2 Replies)
Discussion started by: lancesunny
2 Replies
iconv_dhn(5)						Standards, Environments, and Macros					      iconv_dhn(5)

NAME
iconv_dhn - code set conversion tables for DHN (Dom Handlowy Nauki) DESCRIPTION
The following code set conversions are supported: +--------------------------------------------------------------------+ | Code Set Conversions Supported | +--------------+--------+--------------+--------+--------------------+ | Code |Symbol |Target Code |Symbol | Target Output | +--------------+--------+--------------+--------+--------------------+ |DHN |dhn |ISO 8859-2 |iso2 | ISO Latin 2 | +--------------+--------+--------------+--------+--------------------+ |DHN |dhn |MS 1250 |win2 | Windows Latin 2 | +--------------+--------+--------------+--------+--------------------+ |DHN |dhn |MS 852 |dos2 | MS-DOS Latin 2 | +--------------+--------+--------------+--------+--------------------+ |DHN |dhn |Mazovia |maz | Mazovia | +--------------+--------+--------------+--------+--------------------+ CONVERSIONS
The conversions are performed according to the following tables. All values in the tables are given in octal. DHN to ISO 8859-2 For the conversion of DHN to ISO 8859-2, all characters not in the following table are mapped unchanged. +-----------------------------------------------------------------+ | | Conversions|Performed | | | DHN | ISO 8859-2 | DHN | ISO 8859-2 | |24-177 | 40 |222 |40 | |200 | 241 |223 |364 | |201 | 306 |224 |366 | |202 | 312 |225-230 |40 | |203 | 243 |231 |326 | |204 | 321 |232 |334 | |205 | 323 |233-237 |40 | |206 | 246 |240 |341 | |207 | 254 |241 |355 | |210 | 257 |242 |363 | |211 | 261 |243 |372 | |212 | 346 |244-340 |40 | |213 | 352 |341 |337 | |214 | 263 |342-365 |40 | |215 | 361 |366 |367 | |216 | 363 |367 |40 | |217 | 266 |370 |260 | |220 | 274 |371-376 |40 | |221 | 277 | | | +---------------+----------------+----------------+---------------+ DHN to MS 1250 For the conversion of DHN to MS 1250, all characters not in the following table are mapped unchanged. +-----------------------------------------------------------------+ | | Conversions|Performed | | | DHN | MS 1250 | DHN | MS 1250 | |200 | 245 |233-237 |40 | |201 | 306 |240 |341 | |202 | 312 |241 |355 | |203 | 243 |242 |363 | |204 | 321 |243 |372 | |205 | 323 |244-251 |40 | |206 | 214 |252 |254 | |207 | 217 |253-255 |40 | |210 | 257 |256 |253 | |211 | 271 |257 |273 | |212 | 346 |260-340 |40 | |213 | 352 |341 |337 | |214 | 263 |342-345 |40 | |215 | 361 |346 |265 | |216 | 363 |347-360 |40 | |217 | 234 |361 |261 | |220 | 237 |362-365 |40 | |221 | 277 |366 |367 | |222 | 40 |367 |40 | |223 | 364 |370 |260 | |224 | 366 |371 |40 | |225-230 | 40 |372 |267 | |231 | 326 |373-376 |40 | |232 | 334 | | | +---------------+----------------+----------------+---------------+ DHN to MS 852 For the conversion of DHN to MS 852, all characters not in the following table are mapped unchanged. +-----------------------------------------------------------------+ | | Conversions|Performed | | | DHN | MS 852 | DHN | MS 852 | |200 | 244 |212 |206 | |201 | 217 |213 |251 | |202 | 250 |214 |210 | |203 | 235 |215 |344 | |204 | 343 |216 |242 | |205 | 340 |217 |230 | |206 | 227 |220 |253 | |207 | 215 |221 |276 | |210 | 275 |222-375 |40 | |211 | 245 | | | +---------------+----------------+----------------+---------------+ DHN to Mazovia For the conversion of DHN to Mazovia, all characters not in the following table are mapped unchanged. +-----------------------------------------------------------------+ | | Conversions|Performed | | | DHN | Mazovia | DHN | Mazovia | |200 | 217 |212 |215 | |201 | 225 |213 |221 | |202 | 220 |214 |222 | |203 | 234 |215 |244 | |204 | 245 |216 |242 | |205 | 243 |217 |236 | |206 | 230 |220 |246 | |207 | 240 |221 |247 | |210 | 241 |222-247 |40 | |211 | 206 | | | +---------------+----------------+----------------+---------------+ FILES
/usr/lib/iconv/*.so conversion modules /usr/lib/iconv/*.t conversion tables /usr/lib/iconv/iconv_data list of conversions supported by conversion tables SEE ALSO
iconv(1), iconv(3C), iconv(5) SunOS 5.10 18 Apr 1997 iconv_dhn(5)
All times are GMT -4. The time now is 05:54 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy