Sponsored Content
Top Forums Shell Programming and Scripting awk/grep copy and paste and insert in between lines. Post 302335529 by summer_cherry on Monday 20th of July 2009 12:45:02 AM
Old 07-20-2009
please try below perl script
Code:
my (@tmp,$head,$key);
while(<DATA>){
	if(! /^[0-9]/){
		$head=$_;
		print;
		next;
	}
	else{
		@tmp=split(" ",$_,2);
		$tmp[0]=~s/://g;
	}
	if($tmp[0] < $key){
		$head=~s:([0-9]{2})/([0-9]{2})/([0-9]{2}):$1."/".($2+1)."/".$3:e;
		print $head;
	}
	$key=$tmp[0];
	print;
}

__DATA__
Linux 2.6.24-24-generic (abc)       07/15/09
23:25:01        CPU     %user     %nice   %system   %iowait    %steal     %idle
23:35:01        all      1.33      0.00      0.08      0.00      0.00     98.59
23:45:01        all      1.36      0.00      0.08      0.00      0.00     98.56
23:55:01        all      1.33      0.00      0.08      0.00      0.00     98.58
23:59:01        all      1.59      0.00      0.09      0.00      0.00     98.32
00:00:01        all      1.50      0.00      0.12      0.00      0.00     98.32
00:05:01        all      1.49      0.00      0.12      0.14      0.00     98.25
00:15:01        all      1.33      0.00      0.07      0.00      0.00     98.60
00:25:01        all      1.44      0.00      0.07      0.00      0.00     98.49
00:35:01        all      1.26      0.00      0.07      0.00      0.00     98.66
00:45:01        all      1.37      0.00      0.09      0.00      0.00     98.53
00:15:01        all      1.37      0.00      0.09      0.00      0.00     98.53

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Cut Paste and Insert Help

Hello I have a very large file where say each line is made up of 80 characters. I want to cut the characters from 20-30 and 50-60 from each line and then insert a delimiter between them (# or | etc). eg input file 000000000131.12.20990000590425246363375670011200140406... (5 Replies)
Discussion started by: PradeepRed
5 Replies

2. Shell Programming and Scripting

sed/awk script selective insert between lines

Hi I have a file in the foll. format *RECORD* *FIELD NO* ....... ....... *FIELD TX* Data *FIELD AV* Data *FIELD RF* *RECORD* *FIELD NO* ....... ....... *FIELD TX* Data *FIELD RF* (4 Replies)
Discussion started by: dunstonrocks
4 Replies

3. UNIX for Dummies Questions & Answers

copy and paste certain many lines of huge file in linux

Dear All, I am working with windoes OS but remote a linux machine. I wonder the way to copy an paste some part of a huge file in linux machine. the contain of file like as follow: ... dump annealling all custom 10 anneal_*.dat id type x y z q timestep 0.02 run 200000 Memory... (2 Replies)
Discussion started by: ariesto
2 Replies

4. Shell Programming and Scripting

copy/paste with awk

Hi everybody, I have two XML files. I am working on a script that could copy and paste the contents of the first xml file to the desired location in the second xml file. Here is my first XML file. This is the second XML file. Finaly, I wnat to obtain something like that : ... (2 Replies)
Discussion started by: lsaas
2 Replies

5. Shell Programming and Scripting

sed/awk to insert multiple lines before pattern

I'm attempting to insert multiple lines before a line matching a given search pattern. These lines are generated in a separate function and can either be piped in as stdout or read from a temporary file. I've been able to insert the lines from a file after the pattern using: sed -i '/pattern/... (2 Replies)
Discussion started by: zksailor534
2 Replies

6. Shell Programming and Scripting

Using a combination of sort/cut/grep/awk/join/paste/sed

I have a file and need to only select users that have a shell of “/bin/bash” in the line using awk or sed please help (4 Replies)
Discussion started by: boyboy1212
4 Replies

7. Shell Programming and Scripting

AWK/GREP: grep only lines starting with integer

I have an input file 12.4 1.72849432773174e+01 -7.74784188610632e+01 12.5 9.59432114416327e-01 -7.87018212757537e+01 15.6 5.20139995965960e-01 -5.61612429666624e+01 29.3 3.76696387248366e+00 -7.42896194101892e+01 32.1 1.86899877018077e+01 -7.56508762501408e+01 35 6.98857157014640e+00... (2 Replies)
Discussion started by: chrisjorg
2 Replies

8. Shell Programming and Scripting

awk to insert duplicated lines

Dear All, Suppose I have a file: 1 1 1 1 2 2 2 2 3 3 3 3I want to insert new line under each old line so that the file would become: 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3How can this be accomplished using awk (or sed)? (5 Replies)
Discussion started by: littlewenwen
5 Replies

9. UNIX for Dummies Questions & Answers

Copy Lines between Keywords & paste them to another file

hi, I have Multiple files with the following data : File1 100414 DR1 END XXXXX Test1 Test2 Test3 Test4 Test5 Test6 END 100514 DR2 END XXXXX Test7 Test8 Test9 Test10 Test11 Test12 END 100614 DR3 (5 Replies)
Discussion started by: newageBATMAN
5 Replies

10. Shell Programming and Scripting

Use sed/awk to do like copy and paste

I have rrd file which is have the gaps and I want to fill it out with some value , I've got 10 NaN record and I try to populate data from 10 records be for NaN to change instead of NaN :( <!-- 2016-05-19 14:10:00 CST / 1463638200 -->... (11 Replies)
Discussion started by: boobytrap
11 Replies
PASTE(1)						      General Commands Manual							  PASTE(1)

NAME
paste - paste multiple files together SYNOPSIS
paste [-s] [-d list] file... OPTIONS
-d Set delimiter used to separate columns to list. -s Print files sequentially, file k on line k. EXAMPLES
paste file1 file2 # Print file1 in col 1, file2 in col 2 paste -s f1 f2 # Print f1 on line 1 and f2 on line 2 paste -d : file1 file2 # Print the lines separated by a colon DESCRIPTION
Paste concatenates corresponding lines of the given input files and writes them to standard output. The lines of the different files are separated by the delimiters given with the option -s. If no list is given, a tab is substituted for every linefeed, except the last one. If end-of-file is hit on an input file, subsequent lines are empty. Suppose a set of k files each has one word per line. Then the paste output will have k columns, with the contents of file j in column j. If the -s flag is given, then the first file is on line 1, the second file on line 2, etc. In effect, -s turns the output sideways. If a list of delimiters is given, they are used in turn. The C escape sequences , , \, and are used for linefeed, tab, backslash, and the null string, respectively. PASTE(1)
All times are GMT -4. The time now is 06:51 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy