Sponsored Content
Top Forums Shell Programming and Scripting Concatenate lines between lines starting with a specific pattern Post 302465676 by Scrutinizer on Saturday 23rd of October 2010 09:45:35 AM
Old 10-23-2010
I know, but I figured it would complicate the code and it would not really matter. I did add the linefeed at the end, otherwise if the output gets written to a file, that last line becomes invalid, since the last line is not terminated with a linefeed..
Code:
awk '{printf />/?(NR>1?RS:x)"%s"RS:"%s",$0}END{print x}' infile

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

shell script to remove all lines from a file before a line starting with pattern

hi,, i hav a file with many lines.i need to remove all lines before a line begginning with a specific pattern from the file because these lines are not required. Can u help me out with either a perl script or shell script example:- if file initially contains lines: a b c d .1.2 d e f... (2 Replies)
Discussion started by: raksha.s
2 Replies

2. Shell Programming and Scripting

delete lines starting with a pattern

i have a file sample.txt containing i want to delete lines starting with 123 neglecting spaces and tabs. but not lines containing 123. i.e. i want files sample.txt as help me thanxx (4 Replies)
Discussion started by: yashwantkumar
4 Replies

3. Shell Programming and Scripting

Delete multiple lines starting with a specific pattern

Hi, just tried some script, awk, sed for the last 2 hours and now need help. Let's say I have a huge file of 800,000 lines like this : It's a tedious job to look through it, I'd like to remove those useless lines in it as there's a few thousands : Or to be even more precise : if line1 =... (6 Replies)
Discussion started by: Zurd
6 Replies

4. Shell Programming and Scripting

Append lines for a specific pattern

Input: 09:43:46,538 INFO first text 10:45:46,538 INFO second text 11:00:46,538 INFO third more text Output: 09:43:46,538 INFO first text 10:45:46,538 INFO second text 11:00:46,538 INFO third more text The rule is to append all lines so each line contains this format... (7 Replies)
Discussion started by: chitech
7 Replies

5. Shell Programming and Scripting

Awk, sed - concatenate lines starting with string

I have a file that looks like this: John Smith http://www.profile1.com http://www.profile2.com http://www.profile3.com Marc Olsen http://www.profile4.com http://www.profile5.com http://www.profile6.com http://www.profile7.com Lynne Doe http://www.profile8.com http://www.profile9.com... (3 Replies)
Discussion started by: locoroco
3 Replies

6. Shell Programming and Scripting

How to concatenate lines with specific pattern?

How to concatenate lines with specific pattern? I have data dumped from a table into text file. In some occurrence the data row is split into two rows. Example: 12345678|Global Test|Global Test Task|My Request|Date|Date|Date|1|1| 12345679|Global Test2|Global Test Task2|My... (8 Replies)
Discussion started by: nixtime
8 Replies

7. Shell Programming and Scripting

Want to get lines before specific pattern

Hi , I want to insert data into a new file after grepping specific pattern . for more info please read following for example: abc=12345678902222 def=45678904444 ------- ------- INAVLID ABC I want to "INAVLID ABC" grep above pattern from multiple files and want to write abc value and ... (3 Replies)
Discussion started by: vipin auja
3 Replies

8. Shell Programming and Scripting

Vi editor deleting lines with specific pattern

Hi, I need to delete all lines in the file using vi editor which start with word aternqaco. Please assist. aternqaco.__oracle_base='/amdbqa01/app/oracle'#ORACLE_BASE set from environment aternqa.__oracle_base='/amdbqa01/app/oracle'#ORACLE_BASE set from environment... (3 Replies)
Discussion started by: Vishal_dba
3 Replies

9. Shell Programming and Scripting

How to delete lines starting with specific string?

Dear all, I would like to delete even lines starting with "N" together with their respective titles which are actually odd lines. Below is the example of input file. I would like to remove line 8 and 12 together with its title line, i.e., line 7 and 11, respectively.... (2 Replies)
Discussion started by: huiyee1
2 Replies

10. UNIX for Dummies Questions & Answers

Grep -v lines starting with pattern 1 and not matching pattern 2

Hi all! Thanks for taking the time to view this! I want to grep out all lines of a file that starts with pattern 1 but also does not match with the second pattern. Example: Drink a soda Eat a banana Eat multiple bananas Drink an apple juice Eat an apple Eat multiple apples I... (8 Replies)
Discussion started by: demmel
8 Replies
UNSORT(1)						    BSD General Commands Manual 						 UNSORT(1)

NAME
unsort -- reorder lines in a file in semirandom ways SYNOPSIS
unsort [-hvrpncmMsz0l] [--help] [--version] [--random] [--heuristic] [--identity] [--concatenate] [--merge] [--merge-random] [--seed integer] [--zero-terminated] [--null] [--linefeed] [file ...] DESCRIPTION
unsort prints the lines in the input files (or standard input) in semi-random order. Available algorithms are a Mersenne Twister based PRNG and a heuristic algorithm that aims to create a subjective even distribution. Command line options -h, --help Display a concise summary of the available options and argument syntax. -v, --version Display version and copyright information. -r, --random Use the Mersenne Twister based randomization algorithm. -p, --heuristic Use the heuristic "shuffling" algorithm which permutes the lines in such a way that they're spread more or less evenly in the output. This is the default. -n, --identity Do not reorder lines in the input. Useful if you just want to merge the files. -r, --concatenate Concatenate all input files then apply the shuffling algorithm to the result as a whole. -m, --merge Shuffle all input files seperately then merge the result. Equal-sized files will be merged in the order in which they appear on the command line. -M, --merge-random Shuffle all input files seperately then merge the result. Equal-sized files will be merged in random order. This is the default. -s, --seed integer Use this integer as a seed, instead of random data from the environment. -z, --zero-terminated, -0, --null Lines are terminated with a character. -l, --linefeed Lines are terminated with a character. This is the default. SEE ALSO
sort(1) Free Software June 1, 2019 Free Software
All times are GMT -4. The time now is 02:03 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy