03-23-2006
help combining lines in awk
I seem to have gotten myself in over my head on this one. I need help combining lines together.
I have a text file containing 24,000 lines (exactly why I need awk) due to bad formatting it has separated the lines (ideally it should be 12,000 lines total).
Example of file:
169.393 171.312 56.783 88.03 56.118
56.666 86.571 169.393 -999.25
169.393 171.312 56.783 88.03 56.118
56.666 86.571 169.393 -999.25
169.393 171.312 56.783 88.03 56.118
56.666 86.571 169.393 -999.25
It goes on that way for 24k lines. What I need to do is bring the second line up after the first one so it looks like:
169.393 171.312 56.783 88.03 56.118 56.666 86.571 169.393 -999.25
169.393 171.312 56.783 88.03 56.118 56.666 86.571 169.393 -999.25
169.393 171.312 56.783 88.03 56.118 56.666 86.571 169.393 -999.25
The kicker thing is that there is no way to sort the two apart by the numbers, assume the numbers are completely random. The only way I can think is to try and sort by number of fields in each line. Is there any other way this can be done, or can someone help me figure out how to sort them by number of fields (4 vs 5).
Thanks
Blueheed
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I am fairly new to scripting. But I have been able to extract and format all of my information required into one file. My issue is that one character is on a separate line. I need to be able to add the character to the previous line.
ex.
abcdefghi
1
bcdefghij
3
cdefghijk
4
need to... (4 Replies)
Discussion started by: DUST
4 Replies
2. Shell Programming and Scripting
Is there a way to combine two lines onto a single line...append the following line onto the previous line?
I have the following file that contains some blank lines and some lines I would like to append to the previous line...
current file:
checking dsk c19t2d6
checking dsk c19t2d7
... (2 Replies)
Discussion started by: mr_manny
2 Replies
3. Shell Programming and Scripting
Hi
I am fairly new to shell scripting
i have some file with outout
1011
abc fyi
6.1.4.5
abr tio
70986
dfb hji
4.1.7
....some text
111114
i have to format this text to
1011 abc fyi 6.1.4.5 abr tio
70986 dfb hji 4.1.7 ....some text
111114 (3 Replies)
Discussion started by: shell.scriptor
3 Replies
4. Shell Programming and Scripting
Here is the sample file:
646 STARTED Tue Dec 30 06:38:53 2008
Job DdCustXAddr_brad has been reset.
647 STARTED Tue Dec 30 06:38:54 2008
Starting Job DdCustXAddr_brad. (...)
704 STARTED Tue Dec 30 06:49:02 2008
Job DdCustXAddr_brad aborted.
I want to combine every non-numbered line... (4 Replies)
Discussion started by: mfavero
4 Replies
5. Shell Programming and Scripting
Combining many lines to one using awk or any unix cmd
Inputfile:
Output :
Appreciate help on this. (14 Replies)
Discussion started by: pinnacle
14 Replies
6. Shell Programming and Scripting
I am trying to come up with a good approach to taking a file and only printing 10 columns.
The input file has duplicate lines but only the 6th column has real value.
I just need to combine the lines and output 1 line per
example file:
1 2.0765 AA 10 0.6557 .....
1 2.0765 AA 10 0.6655 .....
2... (12 Replies)
Discussion started by: mykey242
12 Replies
7. Shell Programming and Scripting
Hi,
I have a requirement like following:
I have input file like:
Question: 1 ----Multiple choice---
What is
your
favourite colour?
Options: a) red b) blue c) none of these
Question: 2 ---Multiple choice-----
In which month
did you join
your first job?
Options: a) Jan b) Feb c)... (11 Replies)
Discussion started by: ppatra
11 Replies
8. Shell Programming and Scripting
Dear all,
I have a file like this:
imput
scaffold_0 1
scaffold_0 10000
scaffold_0 20000
scaffold_0 25000
scaffold_1 1
scaffold_1 10000
scaffold_1 20000
scaffold_1 23283
and I want the output like this:
scaffold_0 1 scaffold_0 10000
scaffold_0 10000 scaffold_0 20000... (6 Replies)
Discussion started by: valente
6 Replies
9. Shell Programming and Scripting
Hi All,
I have a file which has the following sample lines
--
<Member name="Canada"
Currency="CAD"
--
<Member name="UK"
Currency="GBP"
--
<Member name="Switzerland"
Currency="CHF"
--
<Member name="Germany"
Currency="EUR"
-- (11 Replies)
Discussion started by: dev.devil.1983
11 Replies
10. UNIX for Beginners Questions & Answers
Hi
below is the input file snippet.
here i want that all the line which is coming after 1 shoud be in one line.
so for exanple if after 1 there is two lines which is starting with 2 should be combine in one line.
input file content
1,8091012,BATCH_1430903_01,21,T,2,808738,,,,21121:87:01,... (19 Replies)
Discussion started by: scriptor
19 Replies
LEARN ABOUT REDHAT
filechan
FILECHAN(8) System Manager's Manual FILECHAN(8)
NAME
filechan - file-writing backend for InterNetNews
SYNOPSIS
filechan [ -d directory ] [ -f fields ] [ -m mapfile ] [ -p pidfile ]
DESCRIPTION
Filechan reads lines from standard input and copies certain fields in each line into files named by other fields within the line. Filechan
is intended to be called by innd(8) as a channel feed. (It is not a full exploder and does not accept commands; see newsfeeds(5) for a
description of the difference and buffchan(8) for an exploder program.)
Filechan input is interpreted as a set of lines. Each line contains a fixed number of initial fields, followed by a variable number of
filename fields. All fields in a line are separated by whitespace. The default number of initial fields is one.
For each line of input, filechan writes the initial fields, separated by whitespace and followed by a newline, to each of the files named
in the filename fields. When writing to a file, filechan opens it in append mode and tries to lock it and change the ownership to the user
and group who owns the directory where the file is being written.
OPTIONS
-f The ``-f'' flag may be used to specify a different number of initial fields.
-d By default, filechan writes its output into the directory <pathoutgoing in inn.conf>. The ``-d'' flag may be used to specify a
directory the program should change to before starting.
-p If the ``-p'' flag is used, the program will write a line containing its process ID (in text) to the specified file.
If filechan is invoked with ``-f 2'' and given the following input:
news/software/b/132 <1643@munnari.oz.au> foo uunet
news/software/b/133 <102060@litchi.foo.com> uunet munnari
comp/sources/unix/2002 <999@news.foo.com> foo uunet munnari
Then the file foo will have these lines:
news/software/b/132 <1643@munnari.oz.au>
comp/sources/unix/2002 <999@news.foo.com>
the file munnari will have these lines:
news/software/b/133 <102060@litchi.foo.com>
comp/sources/unix/2002 <999@news.foo.com>
and the file uunet will have these lines:
news/software/b/132 <1643@munnari.oz.au>
news/software/b/133 <102060@litchi.foo.com>
comp/sources/unix/2002 <999@news.foo.com>
Because the time window in which a file is open is very small, complicated flushing and locking protocols are not needed; a mv(1) followed
by a sleep(1) for a couple of seconds is sufficient.
-m A map file may be specified by using the ``-m'' flag. Blank lines and lines starting with a number sign (``#'') are ignored. All
other lines should have two host names separated by a colon. The first field is the name that may appear in the input stream; the
second field names the file to be used when the name in the first field appears. For example, the following map file may be used to
map the short names above to the full domain names:
# This is a comment
uunet:news.uu.net
foo:foo.com
munnari:munnari.oz.au
HISTORY
Written by Robert Elz <kre@munnari.oz.au>, flags added by Rich $alz <rsalz@uunet.uu.net>. This is revision 1.6, dated 1998/04/09.
SEE ALSO
buffchan(8), inn.conf(5), innd(8), newsfeeds(5).
FILECHAN(8)