Sponsored Content
Top Forums Shell Programming and Scripting Merge lines in a file with Awk - incorrect output Post 302333868 by mv652 on Tuesday 14th of July 2009 08:04:35 AM
Old 07-14-2009
Hope I post this right..


cat <inout file> gives me:

FastEthernet0/0 is up, line protocol is up
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
0 output errors, 0 collisions, 0 interface resets
Serial1/0:0 is up, line protocol is up
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
0 output errors, 0 collisions, 0 interface resets

Needed output:

FastEthernet0/0 is up, line protocol is up, 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 output errors, 0 collisions, 0 interface resets
Serial1/0:0 is up, line protocol is up, 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 output errors, 0 collisions, 0 interface resets


Output I get running my and your syntax:

$awk 'ORS=NR%3?",":"\n"' test2

, 0 output errors, 0 collisions, 0 interface resetsred
, 0 output errors, 0 collisions, 0 interface resetsred, 0 abort


Entering the input file with vi seems to show that each original line is ended with an end of line correctly (one line doesn't follow onto the next.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

AWK Merge Fields for Print Output

I've got a file with each record on a separate line and each record contains 34 fields separated by a colon and i'm trying to re-arrange the order of the fields and merge together certain fields separated by a slash (like field7/field28). I tried using an awk print statement like awk -F: 'BEGIN... (5 Replies)
Discussion started by: RacerX
5 Replies

2. Shell Programming and Scripting

awk : deleting specific incorrect lines

Hello friends, I searched in forums for similar threads but what I want is to have a single awk code to perform followings; I have a big log file going like this; ... 7450494 1724465 -47 003A98B710C0 7450492 1724461 -69 003A98B710C0 7450488 1724459 001DA1915B70 trafo_14:3 7450482... (5 Replies)
Discussion started by: enes71
5 Replies

3. Shell Programming and Scripting

Awk: How to merge duplicate lines and print in a single

The input file: >cat module1 200611051053 95 200523457498 35 200617890187 57 200726098123 66 200645676712 71 200744556590 68 >cat module2 200645676712 ... (10 Replies)
Discussion started by: winter9
10 Replies

4. Shell Programming and Scripting

awk file comparison, x lines after matching as output

Hello, I couldn't find anything on the Forum that would help me to solve this problem. Could any body help me process below data using awk? I have got two files: file1: Worker1: Thomas Position: Manager Department: Sales Salary: $5,000 Worker2: Jason Position: ... (5 Replies)
Discussion started by: killerbee
5 Replies

5. Shell Programming and Scripting

Merge multiple lines in same file with common key using awk

I've been a Unix admin for nearly 30 years and never learned AWK. I've seen several similar posts here, but haven't been able to adapt the answers to my situation. AWK is so damn cryptic! ;) I have a single file with ~900 lines (CSV list). Each line starts with an ID, but with different stuff... (6 Replies)
Discussion started by: protosd
6 Replies

6. Shell Programming and Scripting

Find duplicates in column 1 and merge their lines (awk?)

Hi, I have a file (sorted by sort) with 8 tab delimited columns. The first column contains duplicated fields and I need to merge all these identical lines. My input file: comp100002 aaa bbb ccc ddd eee fff ggg comp100003 aba aba aba aba aba aba aba comp100003 fff fff fff fff fff fff fff... (5 Replies)
Discussion started by: falcox
5 Replies

7. UNIX for Dummies Questions & Answers

ID incorrect field values in dat file and output to new file

Hi All I have a .dat file, the values are seperated by ". I wish to identify all field values in field 14 that are not '01-APR-2013' band then copy those records to a new file. Can anyone suggest the UNIX command required. Thanks in advance Andy (2 Replies)
Discussion started by: aurum1313
2 Replies

8. Shell Programming and Scripting

Df -h | awk - output incorrect matching

Running solaris 9, on issuing the follwing command df -h | awk '$5 > 45 {print}' Filesystems with utilisation > 45% are being displayed as well as those between 5 and-9%!!! (3 Replies)
Discussion started by: squrcles
3 Replies

9. Shell Programming and Scripting

E-mail Output Merge Lines for Some Text..

Hi all. This is the content of the text file used for the e-mail: TM ICP-EDW BILLING REGISTER USAGE BREAKDOWN_01062014.csv TM_ICP_EDWH_FICL_13062014.TXT TM_ICP_EDWH_FICL_16062014.TXT TM_ICP_EDW_Detailed Payment Journal Report_13062014.txt TM_ICP_EDW_Detailed Payment Journal... (9 Replies)
Discussion started by: aimy
9 Replies

10. Shell Programming and Scripting

awk to add lines with symbol to output file

In the awk below which does execute I get output that is close, except for all the lines that start with a # are removed. Some lines have one others two or three and after the script adds the ID= to the fields below the pattern in the awk, I can not seem to add the # lines back to the output. ... (5 Replies)
Discussion started by: cmccabe
5 Replies
indent(1)						      General Commands Manual							 indent(1)

Name
       indent - indent and format C program source

Syntax
       indent input [output] [flags]

Description
       The command is intended primarily as a C program formatter.  Specifically, indents code lines, aligns comments, inserts spaces around oper-
       ators where necessary and breaks up declaration lists as in ``int a,b,c;''.

       The command does not break up long statements to make them fit within the maximum line length, but it does flag lines that  are	too  long.
       Lines  are broken so that each statement starts a new line, and braces appear alone on a line.  Also, an attempt is made to line up identi-
       fiers in declarations.

       The flags that can be specified follow. They can appear before or after the file names.	If the output file is omitted, the formatted  file
       is  written back into input and a ``backup'' copy of input is written in the current directory.	If input is named ``/blah/blah/file'', the
       backup file is named ``.Bfile''.  If output is specified, checks to make sure it is different from input.

Options
       The following options are used to control the formatting style imposed by

       -lnnn	   Determines maximum length of output line.  The default is 75.

       -cnnn	   Determines column in which comments start.  The default is 33.

       -cdnnn	   Determines column in which comments on declarations start.  The default is for these comments to start in the  same	column	as
		   other comments.

       -innn	   Determines number of spaces for one indentation level.  The default is 4.

       -dj,-ndj    Causes declarations to be left justified.  -ndj causes them to be indented the same as code.  The default is -ndj.

       -v,-nv	   -v  turns  on  ``verbose''  mode, -nv turns it off.	When in verbose mode, reports when it splits one line of input into two or
		   more lines of output, and it gives some size statistics at completion.  The default is -nv.

       -bc,-nbc    Forces newline after each comma in a declaration.  -nbc turns off this option.  The default is -bc.

       -dnnn	   Controls the placement of comments which are not to the right of code.  Specifying -d2 means that such comments are placed  two
		   indentation	levels	to  the  left of code.	The default -d0 lines up these comments with the code.	See the section on comment
		   indentation below.

       -br,-bl	   Specifying -bl causes complex statements to be lined up in a space order.  For example,
		      if (...)
		      {
			  code
		      }
		   Specifying -br (the default) makes them look like this:
		      if (...) {
			  code
		      }

       You may set up your own ``profile'' of defaults to by creating the file ``.indent.pro'' in your	login  directory  and  including  whatever
       switches  you  like.  If is run and a profile file exists, then it is read to set up the program's defaults.  Switches on the command line,
       though, always override profile switches.  The profile file must be a single line of not more than 127 characters.  The switches should	be
       separated on the line by spaces or tabs.

       Multiline expressions

       The  command  does not break up complicated expressions that extend over multiple lines.  However, it usually indents such expressions that
       have already been broken up correctly.  Such an expression might look like the following:
       x =
	       (
		   (Arbitrary parenthesized expression)
		   +
		   (
		       (Parenthesized expression)
		       *
		       (Parenthesized expression)
		   )
	       );

       Comments

       The command recognizes the following four kinds of comments:

       1)  straight text

       2)  ``box'' comments

       3)  UNIX-style comments

       4)  comments that should be passed through unchanged

       The comments are interpreted as follows:

       ``Box'' comments    The command assumes that any comment with a dash immediately after the start of comment (i.e.  ``/*-'')  is	a  comment
			   surrounded by a box of stars.  Each line of such a comment is left unchanged, except that the first non-blank character
			   of each successive line is lined up with the beginning slash of the first line.  Box comments are indented (see below).

       ``Unix-style'' comments
			   This is the type of section header which is used extensively in the UNIX  system  source.   If  the	start  of  comment
			   (``/*'') appears on a line by itself, assumes that it is a UNIX-style comment.  These are treated similarly to box com-
			   ments, except the first non-blank character on each line is lined up with the `*' of the ``/*''.

       Unchanged comments  Any comment which starts in column 1 is left completely unchanged.  This is intended primarily for documentation header
			   pages.  The check for unchanged comments is made before the check for UNIX-style comments.

       Straight text	   All	other  comments are treated as straight text.  Indent fits as many words (separated by blanks, tabs, or new lines)
			   on a line as possible.  Straight text comments are indented.

       Comment indentation

       Box, UNIX-style, and straight text comments may be indented.  If a comment is on a line with code it is started in the ``comment  column'',
       which is set by the -cnnn command line parameter.  Otherwise, the comment is started at nnn indentation levels less than where code is cur-
       rently being placed, where nnn is specified by the -dnnn command line parameter.  (Indented comments is never be placed in column  1.)	If
       the code on a line extends past the comment column, the comment is moved to the next line.

Restrictions
       Does not know how to format ``long'' declarations.

Diagnostics
       Diagnostic error messages, mostly to tell that a text line has been broken or is too long for the output line.

Files
       .indent.pro    profile file

																	 indent(1)
All times are GMT -4. The time now is 08:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy