Sponsored Content
Top Forums Shell Programming and Scripting Script to extract particular record Post 302534711 by DGPickett on Tuesday 28th of June 2011 02:26:37 PM
Old 06-28-2011
The lack of awk friendly record separators suggests a fold-lines-into-one sed, gerp, and unfold:
Code:
(
  cat your_file
  echo TYPE9
 ) | sed '
  :loop
  /\nType[0-9]/!{
    $d
    N
    b loop
   }
  /'"$KEY"'/{
    h
    s/\nTYPE[0-9].*//
    p
    g
   }
  s/.*\n//
  b loop
  '

Quick Narrative:
  1. Concatenate an extra TYPE9 after your file as a boundary.
  2. sed set a b(ranch)/t(est) target loop
  3. If we have not accumulated a whole record plus the next TYPE,
  4. and it is not time to toss that final fake TYPE,
  5. then stack the next line in the buffer
  6. and branch back to #2 check again #3
  7. Getting here says we do have that whole record plus, so if our key is in there,
  8. hold a copy of the current buffer
  9. take off the last line
  10. print the record (all lines in buf now)
  11. get the held copy
  12. take off all but the last line
  13. go looking for the rest of that record.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

how to extract last line in record

Hi all!! After experiencing great helpfulness the last time I posted a problem at this site, I once again turn to the forum for expert help. The problem: I have a file.dat containing x, y, and z coordinates, like: x y z 1 1 4 1 2 3 1 3 9 2 1 7 2 2 2 2 3 8 3 1 ... (7 Replies)
Discussion started by: bjorb
7 Replies

2. UNIX for Dummies Questions & Answers

How to extract duplicate records with associated header record

All, I have a task to search through several hundred files and extract duplicate detail records and keep them grouped with their header record. If no duplicate detail record exists, don't pull the header. For example, an input file could look like this: input.txt HA D1 D2 D2 D3 D4 D4... (17 Replies)
Discussion started by: run_eim
17 Replies

3. UNIX for Dummies Questions & Answers

Using sed to extract Nth record?

I have a comma-separated record and I'd like to use sed to pull the Nth record from it. It seems like it'd need to be something like this: sed -n 's/'"\,$1\,"'/&/p' Am I close? (3 Replies)
Discussion started by: doubleminus
3 Replies

4. Shell Programming and Scripting

ksh scripting: Extract 1 most recent record for unique key

I'm loading multiple delimited files into an Oracle DB using sqlldr on Unix. I would like to get only the most recent record per each unique key. There may be multiple updates for each key, but I only want the most recent one. There is a date column in my delimited files, so I'm using cat to... (2 Replies)
Discussion started by: OPTIMUS_prime
2 Replies

5. Shell Programming and Scripting

How to extract first and last line of different record from a file

Hi all I want to inquire that is there any unix command that can help me while extracting first and last line in a file ( TEST.dat) for example in the below record i want to extract the line that are in BOLD text or in other words i want to extract line no 1,3,4 and 7 aa 1 2 3 aa 2 3 4... (5 Replies)
Discussion started by: Bungash125
5 Replies

6. Shell Programming and Scripting

PERL: Extract random record which has 4 lines each

Hi, I have a data file with millions of record (N). Each record was saved in 4 lines. So there are total of NX4 lines in the data file. For Example: Host1 a b c d Host2 e f g h Host3 i j k (2 Replies)
Discussion started by: phoeberunner
2 Replies

7. Shell Programming and Scripting

Unix command to extract a record from a table

Suppose there is a table like the following...I just wanted to know if there is any command using which we can get the record/name of the person who joined before 2005.. Sl Name des y.o.joining 1 Ram Engineer 2001 2 Hari Doctor 2004 3 David Plumber 2005 4 Rahim painter 2007 5 gurmeet... (1 Reply)
Discussion started by: satyajit007
1 Replies

8. Shell Programming and Scripting

Extract record in shell script,so far using awk without success

hello, I require help in the following. There is a report similar to the ones shown here. I need to do couple of things 10/07 12:47 0003210042 R TENN ANVISER0 DELF96A.V1.O.TENRREG 120710 124657 U 00000 DELFOR 1 4331 10/07 12:47 0003210043 S TENN... (2 Replies)
Discussion started by: rakeshv
2 Replies

9. Shell Programming and Scripting

Extract record from file based on section.

input file output file (1 Reply)
Discussion started by: lathigara
1 Replies

10. Shell Programming and Scripting

Extract timestamp from first record in xml file and it checks if not it will replace first record

I have test.xml <emp><id>101</id><name>AAA</name><date>06/06/14 1811</date></emp> <Join><id>101</id><city>london</city><date>06/06/14 2011</date></join> <Join><id>101</id><city>new york</city><date>06/06/14 1811</date></join> <Join><id>101</id><city>sydney</city><date>06/06/14... (2 Replies)
Discussion started by: vsraju
2 Replies
TDBTOOL(8)																TDBTOOL(8)

NAME
tdbtool - manipulate the contents TDB files SYNOPSIS
tdbtool tdbtool TDBFILE [COMMANDS...] DESCRIPTION
This tool is part of the samba(1) suite. tdbtool a tool for displaying and altering the contents of Samba TDB (Trivial DataBase) files. Each of the commands listed below can be entered interactively or provided on the command line. COMMANDS
create TDBFILE Create a new database named TDBFILE. open TDBFILE Open an existing database named TDBFILE. erase Erase the current database. dump Dump the current database as strings. cdump Dump the current database as connection records. keys Dump the current database keys as strings. hexkeys Dump the current database keys as hex values. info Print summary information about the current database. insert KEY DATA Insert a record into the current database. move KEY TDBFILE Move a record from the current database into TDBFILE. store KEY DATA Store (replace) a record in the current database. show KEY Show a record by key. delete KEY Delete a record by key. list Print the current database hash table and free list. free Print the current database and free list. ! COMMAND Execute the given system command. first Print the first record in the current database. next Print the next record in the current database. quit Exit tdbtool. CAVEATS
The contents of the Samba TDB files are private to the implementation and should not be altered with tdbtool. VERSION
This man page is correct for version 3.0.25 of the Samba suite. AUTHOR
The original Samba software and related utilities were created by Andrew Tridgell. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed. TDBTOOL(8)
All times are GMT -4. The time now is 08:57 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy