Concatenate lines in a single paragraph


Login or Register to Reply

 
Thread Tools Search this Thread
# 1  
Concatenate lines in a single paragraph

Hi all,

May you help me with this?

After extract only some lines that I need from a file, I would like to concatenate the remaining lines in a single line (paragraph).

Source file pattern:

Code:
Event Type: Warning
Event Source: Sorting
Event Category: None
Event ID: 1188
Date:  9/10/2008
Time:  9:46:50 PM
User:  Adminis\P1
Computer: MyComp-KKL
Description:
User profile MyComp-KKL(S-1-5-21-3230802392-3390281410-1560515013-1307).

After extracting text of my interest I get:

Code:
Warning
9/10/2008
9:46:50 PM
User profile MyComp-KKL(S-1-5-21-3230802392-3390281410-1560515013-1307).

But Im cannot follow with the next step, I would like the next result.
(Join lines like a continuous line)

Code:
In date 9/10/2008, 9:46:50 PM. This is a warning from User profile MyComp-KKL(S-1-5-21-3230802392-3390281410-1560515013-1307).

Any help would be very appreciated.

Best regards
# 2  
hi, if you mean line break then try this:

cat youfile.txt | paste -s -d',' | sed s'/,/, /g'

otherwise if you have allready createed a script then please post it!
# 3  
if you have Python
Code:
d={}
for line in open("file"):
    line=line.strip().split(":")
    d[line[0].strip()]=line[-1].strip()
for k in d.keys():    
    if "User profile" in k: 
        user=k
        break    
print "In date %s, %s. This is a warning from %s." %(d['Date'],d['Time'],user)

output
Code:
# ./test.py
In date 9/10/2008, 50 PM. This is a warning from User profile MyComp-KKL(S-1-5-21-3230802392-3390281410-1560515013-1307)..

# 4  
Alternatively, if you have perl then:

Code:
$
$ cat input.txt
Event Type: Warning
Event Source: Sorting
Event Category: None
Event ID: 1188
Date:  9/10/2008
Time:  9:46:50 PM
User:  Adminis\P1
Computer: MyComp-KKL
Description:
User profile MyComp-KKL(S-1-5-21-3230802392-3390281410-1560515013-1307).
$
$ perl -ne '{if (/^(.*):[ ]+(.*)$/) {$x{$1}=$2}
>            elsif (/^User profile/){$p=$_}
> } END {print "In date $x{Date}, $x{Time}. This is a warning from $p"}' input.txt
In date 9/10/2008, 9:46:50 PM. This is a warning from User profile MyComp-KKL(S-1-5-21-3230802392-3390281410-1560515013-1307).
$
$

tyler_durden
# 5  
Hey guys,

Really thanks to all for your help, for your different solutions to my question; this part of code would help me a lot to continue in my script.

Smilie
Login or Register to Reply

|
Thread Tools Search this Thread
Search this Thread:
Advanced Search

More UNIX and Linux Forum Topics You Might Find Helpful
Join Lines every paragraph in a file.txt
lxdorney
Hi all, Is there any idea on how to automate convert the paragraph in one line in a file, this will happen after OCR the documents, OCR split every paragraph. I need to join all the paragraph in one line. #cat file.txtThe Commission on Higher Education (CHED) was created through Republic Act...... Shell Programming and Scripting
7
Shell Programming and Scripting
Multiple lines in a single column to be merged as a single line for a record
Bhuvaneswari
Hi, I have a requirement with, No~Dt~Notes 1~2011/08/1~"aaa bbb ccc ddd eee fff ggg hhh" Single column alone got splitted into multiple lines. I require the output as No~Dt~Notes 1~2011/08/1~"aaa<>bbb<>ccc<>ddd<>eee<>fff<>ggg<>hhh" mean to say those new lines to be...... Shell Programming and Scripting
1
Shell Programming and Scripting
How to search for multiple lines and put them into one paragraph?
liuzhencc
Dear all, I'm trying to manipulate a data file and putting a certain lines into one paragraph. What am I actually want to do is that search some lines in a data file. These lines begin with "1\1\GINC-" and end with "\\@" or the following two empty lines as shown in blue. A part of the text...... Shell Programming and Scripting
11
Shell Programming and Scripting
Concatenate lines between lines starting with a specific pattern
s052866
Hi, I have a file such as: --- >contig00001 length=35524 numreads=2944 gACGCCGCGCGCCGCGGCCAGGGCTGGCCCA CAGGCCGCGCGGCGTCGGCTGGCTGAG >contig00002 length=4242 numreads=43423 ATGCCGAAGGTCCGCCTGGGGCTGG CGCCGGGAGCATGTAGCG --- I would like to concatenate the lines not starting with ">"...... Shell Programming and Scripting
9
Shell Programming and Scripting
Convert a paragraph to single line
rimss
I need to check the count of pipes on each line of the data to make sure we 4 pipes if its less i need to keep adding the string to form a single line ( Need to join/ concat the below lines until i get the 4 pipes which is end of record ). This fields is basicall a memo where the user would have...... Shell Programming and Scripting
6
Shell Programming and Scripting