Actually, it's not very robust. The command will mostly hang (loop infinitely) if the last (fourth) field has a null value.
This will at least break out of the loop but will not give the desired result, in such a case.
Last edited by elixir_sinari; 09-05-2012 at 04:34 AM..
This code seems working great on the sample!
Could someone kindly explain what it is doing? The regular expression here is kinda difficult for me...
Besides, I get error when I run this code.
I run it on a the sample file called "test1.txt" and get the following error.
Is that I have missed something? I have put in the filename already.
---------- Post updated at 09:15 AM ---------- Previous update was at 08:58 AM ----------
Quote:
Originally Posted by Scrutinizer
Ah yes.. This should work better
This one also works!
Could you please kindly explain what's the meaning of the code?
---------- Post updated at 09:29 AM ---------- Previous update was at 09:15 AM ----------
---------- Post updated at 09:50 AM ---------- Previous update was at 09:29 AM ----------
sorry to all...i am confused...
there are so many solutions!
but each solution yields different results!!!
Here is the real data format for my case
totally i have 614293 lines in my data
I tried the following code which yielded 595647 lines in the result. (this one give me an error "new-line character seen in unquoted field" when i process it further using another script...)
then i tried the following code which yielded 595433 lines in the result
then i tried the following which yielded 595647 lines (this one also give me an error "new-line character seen in unquoted field" when i process it further using another script...)
I am totally confused on what's caused of the difference noted...and which code i should use...
Last edited by Nekki Basara; 09-06-2012 at 11:41 PM..
I think the problem lies in the the last field. In your sample if it is empty or there are fewer than x fields, then that means that the lines should be merged. In your actual data that is not always the case; sometimes the lines do not necessarily need to be merged even if the last field contains no value..
Perhaps merging needs to occur only if a line has fewer than X fields OR ( it has X fields AND the last field is empty AND the next line has fewer than X fields ) ?
Last edited by Scrutinizer; 09-07-2012 at 04:38 AM..
If i have counted correctly you have 15 fields in each line. This means there have to be 14 delimiters - if there are fewer, merge the next line to this, otherwise leave it alone.
The following should do what you want:
This will even connect lines broken into several pieces, but consecutive lines will have to add up to correct ones, otherwise the script will fail to produce correct results.
That is, if a line with 14 fields is followed by a line with 16 fields, it will produce one line with 30 fields, not two with 15 fields each.
If i have miscounted the fields or your file format changes, you can correct this in the counter "\{n\}", which repeats the previous expression "\(|[^|]*\)" (delimiter, followed by optional non-delimiter) n times.
Hi all,
I have a csv input file with total 60 fields and the fields are not enclosed with double quotes.One of the field(50th field) in this file has line breaks in it which results in the row getting split into multiple lines.This is causing my load(to table) to fail.I tried to enforce double... (3 Replies)
Hi,
I have an issue with the line breaks in the mail spool- /var/mail/user1. I have set up a script to go through the mail spool on one of the users and parse some parts of the mail, however there doesn't seem to exist the regular line endings CR, LF or both in the lines and this is breaking my... (4 Replies)
Heyas
I'm trying to read/display a file its content and put borders around it (tui-cat / tui-cat -t(ypwriter).
The typewriter-part is a 'bonus' but still has its own flaws, but thats for later.
So in some way, i'm trying to rewrite cat using bash and other commands.
But sadly it fails on... (2 Replies)
Dear Concern,
When we using @ sign, line breaks for a particular user in shell. Please advise how to resolve from the problem in HP UX.
tabs@tabsdb02:/ccbs/users/tabs$ cat /etc/passwd|grep tabs
tabs:RdCgOsmKee7Ps:221:201::/ccbs/users/tabs:/usr/bin/ksh... (3 Replies)
Hi All,
Need an urgent solution to an issue . We have created a ksh file or shell script which generates 1 DAT file. the DAT file contains extract of a select statement .
Now the issue is , when we are executing the ksh file , the output is coimng with page breaks and line breaks .
We have... (4 Replies)
Hello,
I want to keep line spaces in comments but clean more then 2 after each.
Example:
$sentence="This is my first sentence
This will be in a new row
This will be too in a new row but not separated with 3line breaks just with
one
";
And i want to... (1 Reply)
I need to remove all line breaks in a document after a match, until there is a blank line.
Example below, after the match "THE GREEN TABLE" remove line breaks until a blank line. Then, after the match "THE BLUE TABLE" do the same.
Before:
THE GREEN TABLE
Lorem ipsum dolor sit amet,... (14 Replies)
Hi everyone,
I have gone through the forum trying to find an answer to this question but was unsuccessful. I am hoping that someone can help me with this please.
I am trying to get my script to recognise line breaks from a file and to give me a result for wc of each line. So basically, if you... (7 Replies)
Hi,
I got some log files which print the whole xml message in separate lines:
e.g.
2008-10-01 14:21:44,561 INFO do something
2008-10-01 14:21:44,561 INFO print xml : <?xml version="1.0" encoding="UTF-8"?>
<a>
<b>my data</b>
</a>
2008-10-01 14:21:44,563 INFO do something again
I want... (3 Replies)
Here is my snippet of code...
getDescription()
{
DESCRIPTION=$(dbaccess dncsdb - << ! 2>/dev/null|sed -e 's/hctt_description//' -e '/^$/ d'|tr -d '\r'
select hct_type.hctt_description
from hct_type,hct_profile
where hct_type.hctt_id=hct_profile.hctt_id
and... (5 Replies)