12-21-2004
PLEASE HELP: 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 size is increasing to 102 because of that.
Can someone suggest me a solution so that the width of the record does not exceed 100 when I transfer this file as text to other server using ftp?
Regards,
Alok
Last edited by alok.benjwal; 12-21-2004 at 07:06 PM..
10 More Discussions You Might Find Interesting
1. UNIX Desktop Questions & Answers
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... (4 Replies)
Discussion started by: sate911
4 Replies
2. Shell Programming and Scripting
Col1 Col2 Col3 Col4
12 Completed 08 0830
12 In Progress 09 0829
11 For F U 07 0828
Considering the file above, how could i replace the third column the most efficient way? The actual file size is almost 1G. I am... (10 Replies)
Discussion started by: tamahomekarasu
10 Replies
3. Shell Programming and Scripting
I was wondering someone might be able to push me in the right direction, I am writing a script to modify fixed-width spool files, As you can see below the original spool file broke a single line into two for printability sake.
I have had been able do the joins using sed, the thing I am... (10 Replies)
Discussion started by: Cho Nagurai
10 Replies
4. Shell Programming and Scripting
Source File:
abcdefghijklmnop01qrstuvwxyz
abcdefghijklmnop02qrstuvwxyz
abcdefghijklmnop03qrstuvwxyz
abcdefghijklmnop04qrstuvwxyz
abcdefghijklmnop05qrstuvwxyz
Whatever characters are in 17-18 on each line of the file, it should be concatenated to the same line at the character number... (6 Replies)
Discussion started by: tamahomekarasu
6 Replies
5. Shell Programming and Scripting
I have to create a single file from three files, Please see below for samples:
day.txt
20090101
20090102
item.txt
123456789101
12345678910209
1234567891
str.txt
1
12
123
output.txt
20090101123456789101 1 0
2009010112345678910209 12 ... (2 Replies)
Discussion started by: tamahomekarasu
2 Replies
6. Shell Programming and Scripting
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
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
hi,
i have a fixed width file with multiple columns and need to print data using awk command.
i use: awk -F "|" '($5 == BH) {print $1,$2,$3}' <non_AIM target>.txt for a delimiter file.
but now i have a fixed width file like below:
7518 8269511BH 20141224951050N8262
11148 8269511BH... (5 Replies)
Discussion started by: kcdg859
5 Replies
9. Shell Programming and Scripting
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
10. Shell Programming and Scripting
Hi Forum.
I have the following script that splits a large fixed-width file into smaller multiple fixed-width files based on input segment type.
The main command in the script is:
awk -v search_col_pos=$search_col_pos -v search_str_len=$search_str_len -v segment_type="$segment_type"... (8 Replies)
Discussion started by: pchang
8 Replies
LEARN ABOUT OPENSOLARIS
makedbm
makedbm(1M) System Administration Commands makedbm(1M)
NAME
makedbm - make a dbm file, or get a text file from a dbm file
SYNOPSIS
makedbm [-b] [-l] [-s] [-E] [-i yp_input_file]
[-o yp_output_name] [-d yp_domain_name]
[-m yp_master_name] [-S delimiter]
[-D number_of_delimiters] infile outfile
makedbm [-u dbmfilename]
DESCRIPTION
The makedbm utility takes the infile and converts it to a pair of files in ndbm format (see ndbm(3C)), namely outfile.pag and outfile.dir.
Each line of the input file is converted to a single dbm record. All characters up to the first TAB or SPACE form the key, and the rest of
the line is the data. If a line ends with `' (backslash), the data for that record is continued on to the next line. makedbm does not
treat `#' (pound-sign) as a special character.
Because makedbm is mainly used in generating dbm files for the NIS name service, it generates a special entry with the key yp_last_modi-
fied, which is the date of infile (or the current time, if infile is `-'). The entries that have keys with the prefix yp_ are interpreted
by NIS server utilities.
OPTIONS
The following options are supported:
-b Insert the YP_INTERDOMAIN into the output. This key causes ypserv(1M) to use DNS for host name and address
lookups for hosts not found in the maps.
-d yp_domain_name Create a special entry with the key yp_domain_name.
-D number_of delimiters Specify number_of_delimiters to skip before forming the key.
-E Delimiters are escaped.
-i yp_input_file Create a special entry with the key yp_input_file.
-l Lower case. Convert the keys of the given map to lower case, so that, for example, host name matches succeed
independent of upper or lower case distinctions.
-m yp_master_name Create a special entry with the key yp_master_name. If no master host name is specified, yp_master_name is set
to the local host name.
-o yp_output_name Create a special entry with the key yp_output_name.
-s Secure map. Accept connections from secure NIS networks only.
-S delimiter Specify the delimiter to use instead of the default delimiter for forming the key.
-u dbmfilename Undo a dbm file. Prints out the file in text format, one entry per line, with a single space separating keys
from values.
OPERANDS
The following operands are supported:
infile Input file for makedbm. If infile is `-' (dash), the standard input is read.
outfile One of two output files in ndbm format: outfile.pag and outfile.dir.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
ypserv(1M), ndbm(3C), attributes(5)
SunOS 5.11 17 Aug 1999 makedbm(1M)