Need awk script to compare 2 fields in fixed length file.
Need a script that manipulates a fixed length file that will compare 2 fields in that file and if they are equal write that line to a new file.
i.e. If fields 87-93 = fields 119-125, then write the entire line to a new file. Do this for every line in the file. After we get only the fields that have duplicates in a separate file, take that file and look in field 83, if it equals 66 or 88 then delete that line and save to a new file.
I would prefer not to do this in Perl, not many people in this office use or understand Perl. The files format is something like this:
Code:
6ZDA90603C5559518898683765109438327630000100000002132P008377612{22004020AZ 07332 195572A2008101645781015365999999SWZSHINABFMN PZTENNBD F 281808023Z19721202 365944281 00354299505F85323 CC0501AB 000900000000{ 7242 2001A{{0000002132P00000000{0000000000{0000002132P0000000000{0000000000{0000000000{3{2004622008110109WC0725200810170830009031 2008110320081103O001200401062004010699245 00{00000000{00002132P00000000{NW0000{00000000{C00002132PA1 AZ 270036484A01785306 207L00000XY1270036484 22O3R03MO BZ 108 V 00 0 E 03O00105
8WGB90603C000951889962167553050300000007900000234481K000000000{22007078AZ 97698 14084052008103120081024601502995SAZPERRY FRGWQFTY 000066760S19760301 112321919400735900702F85613 F AH0301AA 000800000000{ 7244 2003A{{0000007854E00000000{0000007350{0000002607E0000000000{0000000000{0000000000{1A2004622008110109WC0725200811030860785028 2007032176431103I00120040422200404229590059 00D00002840{00000534E00000000{NW0000{00000000{B00000534E42 AZ 860566486L00285635 2084N0400XY1 11O1A05ZZ BZ 108WCW 00 1 01E O04113
6MDA90603C000951889962120083050300000007900000234481K000000000{22007078AZ 97698 14084053467103120081024601502995SAZPERRY MAINE 785633760S19760301 112321919400735900702F85613 F AH0301AA 000800000000{ 7244 1822A{{0000002607E00000000{0022007350{0000002607E0468300000{0000000000{0000000000{1A2004622008110109WC0725200811030860785028 2007032112541103I002200404222004042295904 00D99992680{00001703{00000000{NW0000{67800000{B00001703{42 AZ 860566486L00285635 2084N0400XY1 11O1A05ME BZ 108WCW 00 1 01E O04013
Last edited by vgersh99; 08-25-2009 at 07:12 PM..
Reason: code tags, PLEASE!
To keep the forums high quality for all users, please take the time to format your posts correctly.
First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags [code] and [/code] by hand.)
Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.
Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.
Thank You.
The UNIX and Linux Forums
---------- Post updated at 05:18 PM ---------- Previous update was at 05:12 PM ----------
Hi ,
I am having a scenario where I need to split the file based on two field values. The file is a fixed length file.
ex:
AA0998703000000000000190510095350019500010005101980301
K 0998703000000000000190510095351019500020005101480 ... (4 Replies)
Hi,
I have a DB2 UDB 9.7 SQL script, as follows:
I need to pass the script into Unix and generate a fixed length file from this.
Can someone kindly provide a script to achieve it?
SELECT
CAST(COALESCE(CL_ID,'000000000') AS CHAR(9)) AS CL_ID
,STATUS... (5 Replies)
Hi,
I need to split a fixed length file of 160 characters based on value of a column. Example:
ABC 456780001 DGDG SDFSF
BCD 444440002 SSSS TTTTT
ABC 777750003 HHHH UUUUU
THH 888880001 FFFF LLLLLL
HHH 999990002 GGGG OOOOO
I need to split this file on basis of column from... (7 Replies)
Hi,
I am in a situation to print the message on a column, where the each line starting position should be same.
For example code:
HOSTNAME1="1.2.3.4.5.6.7"
TARGET_DIR="/tmp"
echo "HOSTNAME1:" "$HOSTNAME1" | awk -v var="Everyone" '{len=55-length;printf("%s%*s\n",$0,len,var)}'
echo... (4 Replies)
HPUX and posix shell
Hi all.
I have a record with fixed length fields....I would like to reorder the fields and preserver the fixed lengths....
cat test
4 960025460 Dept of Music
8 960025248 Dept of Music 12-08
cat... (3 Replies)
Hi, all.
I need to convert a file tab delimited/variable length file in AIX to a fixed lenght file delimited by spaces. This is the input file:
10200002<tab>US$ COM<tab>16/12/2008<tab>2,3775<tab>2,3783
19300978<tab>EURO<tab>16/12/2008<tab>3,28523<tab>3,28657
And this is the expected... (2 Replies)
OK I am somewhat new to UNIX programming please see what you can do to help.
I have a flat file that is a fixed length file containing different records based on the 1st character of each line. The 1st number at the beginning of the line is the record number, in this case it's record #1.
I... (3 Replies)
Hi Unix Champs,
I want to awk on a fixed length file.
Instead if the file was a delimited file, then I could have used -F and then could have easily done manipulation on the fields.
How do i do the same in case of fixed length file?
Thanks in Advance.
Regards. (7 Replies)