Sponsored Content
Full Discussion: awk multiple lines
Top Forums UNIX for Advanced & Expert Users awk multiple lines Post 303041886 by jim mcnamara on Thursday 5th of December 2019 08:23:44 PM
Old 12-05-2019
You are using /directory1 as a record separator. That means awk just reads the text including \n characters which display. And not ignoring them using the default EOL operation - chop off the newline.

Try using gsub on each record to remove the newline character from $0, replace that with a space.

Whenever you mess with either pagination or carriage control you can get "unexpected results" in standard tools.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Awk Join multiple lines

Hi, I have data with broken lines: Sample data: "12"|"25"|"a"|"b"|"c"|"d"|"e"|"f"|"2453748"|"08:10:50" "16"|"25"|"a"|"b"|"c"|"d"|"e"|"f"|" 2453748"|"08:15:50" "16"|"25"|"a"|"b"|" c"|"d"|"e"|"f"|"2453748"|"08:19:50" "16"|"25"|"a"|"b"|"c"|"d"|"e"|"f"|"2453748"|"08:19:50" In the... (5 Replies)
Discussion started by: hitmansilentass
5 Replies

2. UNIX for Dummies Questions & Answers

print multiple lines with awk

Hi everyone! I'm not new to Unix, but I've never used awk before. I tried to look up this information on several sites and forums, I also looked in the documentation but I haven't found a solution yet. I would like to print the previous 3 lines before and the following 4 lines after the... (6 Replies)
Discussion started by: djcsabus
6 Replies

3. Shell Programming and Scripting

Awk to Break lines to multiple lines.

Input File: nawk -F "|" '{ for(i=1;i<=NF;i++) { if (i == 2) {gsub(",","#",$i);z=split($i,a,"")} else if (i == 3) {gsub(",","#",$i);z=split($i,b,"")} } if(z > 0) for(i=1;i<=z;i++) print $1,a,"Test"; if(w > 0) for(j=1;j<=w;j++) ... (1 Reply)
Discussion started by: pinnacle
1 Replies

4. Shell Programming and Scripting

AWK record in multiple lines

Hi everyboby this is my problem I Have this input 1111;222 222 2;333 3333;4444 111; 22222;33 33; 444 and I need this output 1111;2222222;3333333;4444 (15 Replies)
Discussion started by: agritur
15 Replies

5. Shell Programming and Scripting

displaying multiple lines using AWk

say I'm doing awk 'NR==534' Is there a way to display 534 535 536 537? without appending to a variable? per line? maybe an easier way with a different command? My first impression was NR==534-537 but that would be too easy :P (2 Replies)
Discussion started by: puttster
2 Replies

6. Shell Programming and Scripting

awk if conditional, multiple lines

Hi experts, I have a file with hundreds of lines that looks something like this: Cake 1 3 4 2 3 1 3 Onion 3 2 4 1 3 4 2 Apple 2 3 4 4 1 2 1 Orange 4 3 4 1 2 4 1 Cake 3 1 4 2 4 2 1 Onion 2 4 2 1 4 2 1 Apple 4 3 3 3 3 2 1 Orange 2 1 2 2 2 4 1 Cake 4 3 4 3 1 3 3 ... I'm trying to... (2 Replies)
Discussion started by: david_seeds
2 Replies

7. Shell Programming and Scripting

Awk match multiple columns in multiple lines in single file

Hi, Input 7488 7389 chr1.fa chr1.fa 3546 9887 chr5.fa chr9.fa 7387 7898 chrX.fa chr3.fa 7488 7389 chr21.fa chr3.fa 7488 7389 chr1.fa chr1.fa 3546 9887 chr9.fa chr5.fa 7898 7387 chrX.fa chr3.fa Desired Output 7488 7389 chr1.fa chr1.fa 2 3546 9887 chr5.fa chr9.fa 2... (2 Replies)
Discussion started by: jacobs.smith
2 Replies

8. Shell Programming and Scripting

awk to filter multiple lines

Hi. I need to filter lines based upon matches in multiple tab-separated columns. For all matching occurrences in column 1, check the corresponding column 4. IF all column 4 entries are identical, discard all lines. If even one entry in column 4 is different, then keep all lines. How can I... (5 Replies)
Discussion started by: owwow14
5 Replies

9. Shell Programming and Scripting

awk to parse multiple lines

What is the correct syntax to have the awk parse the next line as well? The next in bold is where I think it should go, but I wanted to ask the experts since I am a beginner. The file to be parsed is attached as well. Thank you :). awk 'NR==2 {split($2,a,"");b=substr(a,1,length(a-1));print... (6 Replies)
Discussion started by: cmccabe
6 Replies

10. Shell Programming and Scripting

Merging multiple lines to columns with awk, while inserting commas for missing lines

Hello all, I have a large csv file where there are four types of rows I need to merge into one row per person, where there is a column for each possible code / type of row, even if that code/row isn't there for that person. In the csv, a person may be listed from one to four times... (9 Replies)
Discussion started by: RalphNY
9 Replies
getstr(3cur)															      getstr(3cur)

Name
       getstr, mvgetstr, mvwgetstr, wgetstr - read string

Syntax
       #include <cursesX.h>

       int getstr(str)
       char *str;

       int wgetstr(win, str)
       WINDOW *win;
       char *str;

       int mvgetstr(y, x, str)
       int y, x;
       char *str;

       int mvwgetstr(win, y, x, str)
       WINDOW *win;
       int y, x;
       char *str;

Description
       The  routine  reads  characters from the terminal associated with the default window and stores them in a buffer until a carriage return or
       newline is received from The routine B is called by to read each character.

       The routine reads characters from the terminal associated with the specified window.  The characters are read from the current cursor posi-
       tion until a newline or carriage return is received.

       The routine reads characters from the terminal associated with the default window.  The characters are read from the specified cursor posi-
       tion until a newline or carriage return is received.

       The routine reads characters from the terminal associated with the specified window.  The characters are read  from  the  specified  cursor
       position until a newline or carriage return is received.

       The following information applies to all the routines.

       The  resulting  string is placed in the area pointed to by the character pointer The user's erase and kill characters are interpreted.  The
       area used to hold the string is assumed to be large enough to handle it, as does not check for buffer overflow.	If the area is	not  large
       enough, the result will be unpredictable.

       The routines and are macros.

Return Values
       The and functions return OK on success and ERR on error.

See Also
       getch(3cur)

																      getstr(3cur)
All times are GMT -4. The time now is 01:27 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy