Sponsored Content
Top Forums Shell Programming and Scripting how to differentiate columns of a file in perl with no specific delimiter Post 302214127 by Amiya Rath on Saturday 12th of July 2008 06:23:57 AM
Old 07-12-2008
how to differentiate columns of a file in perl with no specific delimiter

Hi everybody,
This time I am having one issue in perl.
I have to create comma separated file using the following type of information. The problem is the columns do not have any specific delimiter. So while using split I am getting different value. Some where it is space(S) and some where it is tab(s). in some cases I do not have values under some specific column and these are also filled with tab(s) and /or space(s).
Revsn: Date Who SID Description of Modification
09-Jul-01 Amiya 01-04Jul01 add setdescriptor shortcuts
02-Aug-99 RathA chk include 1st line
remove per VandJ
06-Jan-98 DasP data obsolete...
02-Jul-97 Gupts add DDMM for completeness

I want my output as
09-Jul-01, Amiya,01-04Jul01, add setdescriptor shortcuts
02-Aug-99,RathA,----, chk include 1st line remove VandJ (If line has only description, add to prev line)
06-Jan-98, DasP,----,data obsolete...
02-Jul-97, Gupts,----, add DDMM for completeness
Thanks in advance....
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Deleting specific columns from a file

Hi Friends, I want to delete specific columns from a file. Say my file content is as follows: "1","a","ww1",1234" "2","b","wwr3","2222" "3","c","erre","3333" Now i want to delete the column 2 and 4 from this file. That is I want the file content to be: "1","ww1" "2","wwr3"... (11 Replies)
Discussion started by: premar
11 Replies

2. Shell Programming and Scripting

replace space with delimiter in whole file -perl

Hi I have a file which have say about 100,000 records.. the records in it look like Some kind of text 1234567891 abcd February 14, 2008 03:58:54 AM lmnop This is how it looks.. if u notice there is a 2byte space between each column.. and im planning to replace that with '|' .. ... (11 Replies)
Discussion started by: meghana
11 Replies

3. UNIX for Dummies Questions & Answers

Displaying specific columns in a file

Hi, I'm just wondering how you display a specific set of columns of a specified file in Unix. For example, if you had an AddressBook file that stores the Names, Phone numbers, and Addresses of people the user entered in the following format (the numbers are just to give an idea of what column... (1 Reply)
Discussion started by: logorob
1 Replies

4. Shell Programming and Scripting

Replace specific columns in one file with columns in another file

HELLO! This is my first post here! By the way, I think it is great that people do this. My question: I have two files, one is a .dilm and one is a .txt. It is my understanding that the .dilm file can be treated as a .txt file. I wrote another program where I was able to manipulate it as if it... (3 Replies)
Discussion started by: mehdib
3 Replies

5. Shell Programming and Scripting

Selecting Specific Columns and Insert the delimiter TAB

Hi, I am writing a Perl Script for the below : I have a data file that consists of the header information which is 231 Lines and the footer information as 4 lines. The total number of line including the header and footer 1.2 Million with Pipe Delimited file. For example: Header Information:... (4 Replies)
Discussion started by: filter
4 Replies

6. Shell Programming and Scripting

Perl script to get info from specific rows & columns (.xls file)

Hi all, I want to read some specific rows & columns in the .xls file with my script to get the data to be manipulated. Now, I can read the .xls file correctly & i can go to the specific sheet that I want but i have a problem to specify the specific rows & columns. I mean, I want to get the info... (0 Replies)
Discussion started by: Yohannita
0 Replies

7. Shell Programming and Scripting

Transpose whole file and specific columns

Hi, I have a file like this a b c d e f g h i j k l Case1: I want to transpose the whole file Output1 a d g j b e h k c f i l Case2 Transpose a specific column - Say 3rd (6 Replies)
Discussion started by: jacobs.smith
6 Replies

8. Shell Programming and Scripting

Perl Code to change file delimiter (passed as argument) to bar delimiter

Hi, Extremely new to Perl scripting, but need a quick fix without using TEXT::CSV I need to read in a file, pass any delimiter as an argument, and convert it to bar delimited on the output. In addition, enclose fields within double quotes in case of any embedded delimiters. Any help would... (2 Replies)
Discussion started by: JPB1977
2 Replies

9. Shell Programming and Scripting

Perl script to accept specific columns from excel

Hi All, I have below perl script which writes xml from .xls file. Now i want to add below two conditions in this script : 1. to check if the the input .xls file has ony two columns , if more tahn two columns then script should pop up an error. 2. If there are two columns , then first column... (4 Replies)
Discussion started by: omkar.jadhav
4 Replies

10. UNIX for Beginners Questions & Answers

Delimiter appending in a data file if we receive a less columns than expected

Required No.of field = 12 Let say you got a “~” delimited input file and this file has 6 input fields and now I want to add 12-5=7 number of “~” into this input file in order to make it 12 fields datafile can have n number of records ex., a~b~c~d~12~r a~b~c~d~12~r a~b~c~d~12~r... (19 Replies)
Discussion started by: LJJ
19 Replies
qmail-header(5) 						File Formats Manual						   qmail-header(5)

NAME
qmail-header - format of a mail message OVERVIEW
At the top of every mail message is a highly structured header. Many programs expect the header to carry certain information, as described below. The main function of qmail-inject is to make sure that each outgoing message has an appropriate header. For more detailed information, see http://pobox.com/~djb/proto/immhf.html. MESSAGE STRUCTURE
A message contains a series of header fields, a blank line, and a body: Received: (qmail-queue invoked by uid 666); 30 Jul 1996 11:54:54 -0000 From: djb@silverton.berkeley.edu (D. J. Bernstein) To: fred@silverton.berkeley.edu Date: 30 Jul 1996 11:54:54 -0000 Subject: Go, Bears! I've got money on this one. How about you? ---Dan (this is the third line of the body) Each header field has a name, a colon, some contents, and a newline: Subject: Go, Bears! The field contents may be folded across several lines. Each line past the first must begin with a space or tab: Received: (qmail-queue invoked by uid 666); 30 Jul 1996 11:54:54 -0000 The field name must not contain spaces, tabs, or colons. Also, an empty field name is illegal. qmail-inject does not allow field names with unprintable characters. Case is irrelevant in field names: subject and SUBJECT and SuBjEcT have the same meaning. ADDRESS LISTS
Certain fields, such as To, contain address lists. An address list contains some number of addresses or address groups, separated by commas: a@b, c@d (Somebody), A Person <e@f>, random group: g@h, i@j;, k@l An address group has some text, a colon, a list of addresses, and a semicolon: random group: g@h, i@j; An address can appear in several forms. The most common form is box@host. Every address must include a host name. If qmail-inject sees a lone box name it adds the default host name. All host names should be fully qualified. qmail-inject appends the default domain name to any name without dots: djb@silverton -> djb@silverton.berkeley.edu It appends the plus domain name to any name that ends with a plus sign: eric@mammoth.cs+ -> eric@mammoth.cs.berkeley.edu A host name may be a dotted-decimal address: djb@[128.32.183.163] RFC 822 allows mailbox names inside angle brackets to include source routes, but qmail-inject strips all source routes out of addresses. SENDER ADDRESSES
qmail-inject looks for sender address lists in the following fields: Sender, From, Reply-To, Return-Path, Return-Receipt-To, Errors-To, Resent-Sender, Resent-From, Resent-Reply-To. If there is no From field, qmail-inject adds a new From field with the name of the user invoking qmail-inject. RFC 822 requires that certain sender fields contain only a single address, but qmail-inject does not enforce this restriction. RECIPIENT ADDRESSES
qmail-inject looks for recipient address lists in the following fields: To, Cc, Bcc, Apparently-To, Resent-To, Resent-Cc, Resent-Bcc. Every message must contain at least one To or Cc or Bcc. qmail-inject deletes any Bcc field. If there is no To or Cc field, qmail-inject adds a line Cc: recipient list not shown: ; This complies with RFC 822; it also works around some strange sendmail behavior, in case the message is passed through sendmail on another machine. STAMPS
Every message must contain a Date field, with the date in a strict format defined by RFC 822. If necessary qmail-inject creates a new Date field with the current date (in GMT). Every message should contain a Message-Id field. The field contents are a unique worldwide identifier for this message. If necessary qmail-inject creates a new Message-Id field. Another important field is Received. Every time the message is sent from one system to another, a new Received field is added to the top of the message. qmail-inject does not create any Received fields. RESENT MESSAGES
A message is resent if it contains any of the following fields: Resent-Sender, Resent-From, Resent-Reply-To, Resent-To, Resent-Cc, Resent- Bcc, Resent-Date, Resent-Message-ID. If a message is resent, qmail-inject changes its behavior as follows. It deletes any Resent-Bcc field (as well as any Bcc field); if there are no Resent-To or Resent-Cc fields, qmail-inject adds an appropriate Resent-Cc line. It does not add a Cc line, even if neither To nor Cc is present. If there is no Resent-From field, qmail-inject adds a new Resent-From field. It does not add a new From field. qmail-inject adds Resent-Date if one is not already present; same for Resent-Message-Id. It does not add new Date or Message-Id fields. OTHER FEATURES
Addresses are separated by commas, not spaces. When qmail-inject sees an illegal space, it inserts a comma: djb fred -> djb, fred qmail-inject removes all Return-Path header fields. qmail-inject also removes any Content-Length fields. SEE ALSO
addresses(5), envelopes(5), qmail-inject(8) qmail-header(5)
All times are GMT -4. The time now is 02:01 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy