Delete first 6 lines and last two lines


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Delete first 6 lines and last two lines
# 1  
Old 12-25-2012
Delete first 6 lines and last two lines

hello all,

i have a text file and i want to remove the first 6 lines and last two lines of it

thanks for your help
# 2  
Old 12-25-2012
What about searching these fora and adapting the solutions found?
Anyhow ... try this:
Code:
awk 'NR<=6 {next}
     {A[NR%3]=$0; j=(NR+1)%3; if (A[j]) print A[j]}
    ' file

# 3  
Old 12-25-2012
thanks but i want easy way i have an idea in my mind to count the lines and use head and tail combination to get what i want but i need a very simple code one way using sed or awk ?
# 4  
Old 12-25-2012
What could be simpler than the awk script proposed?
# 5  
Old 12-25-2012
Code:
# cat file
line1
line2
line3
line4
line5
line6
line7
line8
line9
line10
line11
line12
line13
line14
line15
line16
line17
line18
line19
line20
line21
line22

Code:
# sed -e "1,6 d" -e 'N;$!P;$!D;$d' file
line7
line8
line9
line10
line11
line12
line13
line14
line15
line16
line17
line18
line19
line20

# 6  
Old 12-25-2012
perfect solution thanks alot

could you explain it for me to be understand

Code:
sed -e "1,6 d" -e 'N;$!P;$!D;$d' file

what each symbol of these mean N;$!P;$!D;$d

thanks alot again

Last edited by Scrutinizer; 12-27-2012 at 03:34 AM.. Reason: code tags
# 7  
Old 12-25-2012
From the man of sed:

-e => add the script to the commands to be executed

1,6d => deletes a sequence of 1 to 6 lines. d stands for delete
N=> Read the next line in Pattern space
$!P=> If the current line is not the last line, print the current line
$!D=> If the current line is not the last line, delete the current line
$d=> If the current line is the last line, delete everything in the pattern-space

combination of all this "N;$!P;$!D;$d" will delete the last two lines
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Delete multiple lines between blank lines containing two patterns

Hi all, I'm looking for a way (sed or awk) to delete multiple lines between blank lines containing two patterns ex: user: alpha parameter_1 = 15 parameter_2 = 1 parameter_3 = 0 user: alpha parameter_1 = 15 parameter_2 = 1 parameter_3 = 0 user: alpha parameter_1 = 16... (3 Replies)
Discussion started by: ce9888
3 Replies

2. Shell Programming and Scripting

Sed/awk to delete single lines that aren't touching other lines

Hello, I'm trying to figure out how to use sed or awk to delete single lines in a file. By single, I mean lines that are not touching any other lines (just one line with white space above and below). Example: one two three four five six seven eight I want it to look like: (6 Replies)
Discussion started by: slimjbe
6 Replies

3. Shell Programming and Scripting

search and replace, when found, delete multiple lines, add new set of lines?

hey guys, I tried searching but most 'search and replace' questions are related to one liners. Say I have a file to be replaced that has the following: $ cat testing.txt TESTING AAA BBB CCC DDD EEE FFF GGG HHH ENDTESTING This is the input file: (3 Replies)
Discussion started by: DeuceLee
3 Replies

4. UNIX for Advanced & Expert Users

In a huge file, Delete duplicate lines leaving unique lines

Hi All, I have a very huge file (4GB) which has duplicate lines. I want to delete duplicate lines leaving unique lines. Sort, uniq, awk '!x++' are not working as its running out of buffer space. I dont know if this works : I want to read each line of the File in a For Loop, and want to... (16 Replies)
Discussion started by: krishnix
16 Replies

5. Shell Programming and Scripting

need to delete all lines from a group of files except the 1st 2 lines

Hello, I have a group of text files with many lines in each file. I need to delete all the lines in each and only leave 2 lines in each file. (3 Replies)
Discussion started by: script_op2a
3 Replies

6. UNIX for Dummies Questions & Answers

How get only required lines & delete the rest of the lines in file

Hiiii I have a file which contains huge data as a.dat: PDE 1990 1 9 18 51 28.90 24.7500 95.2800 118.0 6.1 0.0 BURMA event name: 010990D time shift: 7.3000 half duration: 5.0000 latitude: 24.4200 longitude: 94.9500 depth: 129.6000 Mrr: ... (7 Replies)
Discussion started by: reva
7 Replies

7. Shell Programming and Scripting

sed problem - delete all lines until a match on 2 lines

First of all, I know this can be more eassily done with perl or other scripting languages but, that's not the issue. I need this in sed. (or wander if it's possible ) I got a file (trace file to recreate the control file from oracle for the dba boys) which contains some lines another line... (11 Replies)
Discussion started by: plelie2
11 Replies

8. Shell Programming and Scripting

How to delete lines in a file that have duplicates or derive the lines that aper once

Input: a b b c d d I need: a c I know how to get this (the lines that have duplicates) : b d sort file | uniq -d But i need opossite of this. I have searched the forum and other places as well, but have found solution for everything except this variant of the problem. (3 Replies)
Discussion started by: necroman08
3 Replies

9. Shell Programming and Scripting

Grep and delete lines except the lines with strings

Hi I am writing a script which should read a file and search for certain strings 'approved' or 'removed' and retain only those lines that contain the above strings. Ex: file name 'test' test: approved package waiting for approval package disapproved package removed package approved... (14 Replies)
Discussion started by: vj8436
14 Replies

10. Shell Programming and Scripting

How to delete first 5 lines and last five lines in all text files

Hi I want to delete first five and last five lines in text files without opening the file and also i want to keep the same file name for all the files. Thanks in advance!!! Ragav (10 Replies)
Discussion started by: ragavendran31
10 Replies
Login or Register to Ask a Question