Sponsored Content
Special Forums UNIX Desktop Questions & Answers Help with Fixed width File Parsing Post 302190174 by sate911 on Monday 28th of April 2008 11:29:39 PM
Old 04-29-2008
Help with Fixed width File Parsing

I am trying to parse a Fixed width file with data as below. I am trying to assign column values from each record to variables. When I parse the data, the spaces in all coumns are dropped. I would like to retain the spaces as part of the dat stored in the variables. Any help is appreciated.

I would like to redirect this data into a csv file like below for each record
2,6138023380020080422120104828,60061395297943,0000006824, ,C, , ,POS .......etc

Input File

26138023380020080422120104828600613952979430000006824C POS13MMAHONIA NANCY 4189928286000422120104CO OP 2529 HOLIDAY FLCO-OP #2529

My Script:

while read LINE
do
a=`echo "$(echo $LINE |cut -c1-1)"`
b=`echo "$(echo $LINE |cut -c2-32)"`
c=`echo "$(echo $LINE |cut -c33-43)"`
d=`echo "$(echo $LINE |cut -c44-53)"`
e=`echo "$(echo $LINE |cut -c54-55)"`
f=`echo "$(echo $LINE |cut -c55-74)"`
#echo $a,$b,$c,$d,$e,"$f >> Int_4_final.dat
done < $1
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Fixed Width file using AWK

I am using the following command at the Unix prompt to make my 'infile' into a fixed width file of 100 characters. awk '{printf "%-100s\n",$0}' infile > outfile However, there are some records with a special character "©" These records are using 3 characters in place of one and my record... (2 Replies)
Discussion started by: alok.benjwal
2 Replies

2. Shell Programming and Scripting

Changing particular field in fixed width file

I have a fixed width file and i need to change 36th field to "G" in for about random 20 records? How can I do it? (4 Replies)
Discussion started by: dsravan
4 Replies

3. Shell Programming and Scripting

summing up the fields in fixed width file

Hi, I have a fixed width file with some records as given below: " 1000Nalsdjflj243324jljlj" "-0300Njfowjljl309933fsf" " 0010Njsfsjklj342344fsl" I want to sum-up first field values(i.e from 2nd character to 6th character)of each record. so for the above file i want to add (1000 - 300+... (2 Replies)
Discussion started by: srilaxmi
2 Replies

4. Shell Programming and Scripting

Fixed-Width file from Oracle

Hi All, I have created a script which generates FIXED-WIDTH file by executing Oracle query. SELECT RPAD(NVL(col1,CHR(9)),20)||NVL(col2,CHR(9))||NVL(col3,CHR(9) FROM XYZ It generates the data file with proper alignment. But if same file i transfer to windows server or Mainframe... (5 Replies)
Discussion started by: Amit.Sagpariya
5 Replies

5. Shell Programming and Scripting

Manupulating Records in a fixed width file

I am trying to determine what would be a fast and simple way to manipulate data that comes in a fixed width format. This data has 6 segments within a record. Each record needs to written out with a header and the 6 segments. Based on the value in column #6 the fields will be defined accordingly.... (4 Replies)
Discussion started by: Muga801
4 Replies

6. Shell Programming and Scripting

Comparing two fixed width file

Hi Guys I am checking the treads to get the answer but i am not able to get the answer for my question. I have two files. First file is a pattern file and the second file is the file i want to search in it. Output will be the lines from file2. File1: P2797f12af 44751228... (10 Replies)
Discussion started by: anshul_er
10 Replies

7. UNIX for Dummies Questions & Answers

Length of a fixed width file

I have a fixed width file of length 53. when is try to get the lengh of the record of that file i get 2 different answers. awk '{print length;exit}' <File_name> The above code gives me length 50. wc -L <File_name> The above code gives me length 53. Please clarify on... (2 Replies)
Discussion started by: Amrutha24
2 Replies

8. Shell Programming and Scripting

Alter Fixed Width File

Thank u so much .Its working fine as expected. ---------- Post updated at 03:41 PM ---------- Previous update was at 01:46 PM ---------- I need one more help. I have another file(fixed length) that will get negative value (ex:-00000000003000) in postion (98 - 112) then i have to... (6 Replies)
Discussion started by: vinus
6 Replies

9. Shell Programming and Scripting

Fixed Width file creation from csv

Hello All, I'm able to achieve my goal of creating a fixed width file from a comma delimited but I know I'm not doing it as efficiently as possible. Original File checksab 004429876883,O,342040,981.98,10232014 004429876883,O,322389,2615.00,10232014... (6 Replies)
Discussion started by: aahlrich
6 Replies

10. Shell Programming and Scripting

Replace using awk on fixed width file.

All, I used to use following command to replace specific location in a fixed width file. Recently looks like my command stopped working as intended. We are on AIX unix. awk 'function repl(s,f,t,v) { return substr(s,1,f-1) sprintf("%-*s", t-f+1, v) substr(s,t+1) } NR<=10 {... (3 Replies)
Discussion started by: pinnacle
3 Replies
fixed(3erl)						     Erlang Module Definition						       fixed(3erl)

NAME
fixed - the corba fixed type DESCRIPTION
This module contains functions that gives an interface to the CORBA fixed type. The type Fixed used below is defined as: -record(fixed, {digits, scale, value}). where digits is the total amount of digits it consists of and scale is the number of fractional digits. The value field contains the actual Fixed value represented as an integer. The limitations of each field are: * Digits - integer(), -1 > Digits < 32 * Scale - integer(), -1 > Scale =< Digits * Value - integer(), range (31 digits): +/-9999999999999999999999999999999 Since the Value part is represented by an integer, it is vital that the Digits and Scale values are correct. This also means that trailing zeros cannot be left out in some cases: * fixed<5,3> eq. 03.140d eq. 3140 * fixed<3,2> eq. 3.14d eq. 314 Leading zeros can be left out. For your convenience, this module exports functions which handle unary ( - ) and binary ( +-*/ ) operations legal for the Fixed type. Since a unary + have no effect, this module do not export such a function. Any of the binary operations may cause an overflow (i.e. more than 31 significant digits; leading and trailing zeros are not considered significant). If this is the case, the Digit and Scale values are adjusted and the Value truncated (no rounding performed). This behavior is compliant with the OMG CORBA specification. Each binary opera- tion have the following upper bounds: * Fixed1 + Fixed2 - fixed<max(d1-s1,d2-s2) + max(s1,s2) + 1, max(s1,s2)> * Fixed1 - Fixed2 - fixed<max(d1-s1,d2-s2) + max(s1,s2) + 1, max(s1,s2)> * Fixed1 * Fixed2 - fixed<d1+d2, s1+s2> * Fixed1 / Fixed2 - fixed<(d1-s1+s2) + Sinf ,Sinf > A quotient may have an arbitrary number of decimal places, which is denoted by a scale of Sinf. EXPORTS
create(Digits, Scale, Value) -> Result Types Result = Fixed Type | {'EXCEPTION', #'BAD_PARAM'{}} This function creates a new instance of a Fixed Type . If the limitations is not fulfilled (e.g. overflow) an exception is raised. get_typecode(Fixed) -> Result Types Result = TypeCode | {'EXCEPTION', #'BAD_PARAM'{}} Returns the TypeCode which represents the supplied Fixed type. If the parameter is not of the correct type, an exception is raised. add(Fixed1, Fixed2) -> Result Types Result = Fixed1 + Fixed2 | {'EXCEPTION', #'BAD_PARAM'{}} Performs a Fixed type addition. If the parameters are not of the correct type, an exception is raised. subtract(Fixed1, Fixed2) -> Result Types Result = Fixed1 - Fixed2 | {'EXCEPTION', #'BAD_PARAM'{}} Performs a Fixed type subtraction. If the parameters are not of the correct type, an exception is raised. multiply(Fixed1, Fixed2) -> Result Types Result = Fixed1 * Fixed2 | {'EXCEPTION', #'BAD_PARAM'{}} Performs a Fixed type multiplication. If the parameters are not of the correct type, an exception is raised. divide(Fixed1, Fixed2) -> Result Types Result = Fixed1 / Fixed2 | {'EXCEPTION', #'BAD_PARAM'{}} Performs a Fixed type division. If the parameters are not of the correct type, an exception is raised. unary_minus(Fixed) -> Result Types Result = -Fixed | {'EXCEPTION', #'BAD_PARAM'{}} Negates the supplied Fixed type. If the parameter is not of the correct type, an exception is raised. Ericsson AB orber 3.6.20 fixed(3erl)
All times are GMT -4. The time now is 04:36 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy