Sponsored Content
Top Forums Shell Programming and Scripting comparing part of header with part of detailed records. Post 302263599 by summer_cherry on Tuesday 2nd of December 2008 03:45:26 AM
Old 12-02-2008
Hi ,

Is the yellow highlighted section is fixed in all your detail lines?

anyway , below perl may help you a little

input(a.txt):
Code:
IMSHRATE_043008_101016
9820101 A982005000CAVG 030108 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
9820101 A982005000CAVG 030109 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
9820101 A982005000CAVG 043008 000000000000010169000MAR 2008 9820102 MAR 2008 D030108

output:
Code:
MSHRATE_043008_101016
9820101 A982005000CAVG 030108 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
Smaller than header
9820101 A982005000CAVG 030109 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
Bigger than header
9820101 A982005000CAVG 043008 000000000000010169000MAR 2008 9820102 MAR 2008 D030108
Equal with header

code:
Code:
open FH,"<a.txt" or die "Can not open file\n";
my @arr=<FH>;
close FH;
$arr[0]=~m/(.*)_([0-9][0-9])([0-9][0-9])([0-9][0-9])_(.*)/;
$header=$4.$2.$3;
print $arr[0];
for($i=1;$i<=$#arr;$i++){
	my @temp=split(" ",$arr[$i]);
	$temp[2]=~m/([0-9][0-9])([0-9][0-9])([0-9][0-9])/;
	my $body=$3.$1.$2;
	print $arr[$i],($body>$header)?"Bigger than header\n":($body==$header)?"Equal with header\n":"Smaller than header\n";
}

 

10 More Discussions You Might Find Interesting

1. 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

2. Shell Programming and Scripting

Count No of Records in File without counting Header and Trailer Records

I have a flat file and need to count no of records in the file less the header and the trailer record. I would appreciate any and all asistance Thanks Hadi Lalani (2 Replies)
Discussion started by: guiguy
2 Replies

3. UNIX for Dummies Questions & Answers

pull date from header and append to all records

I did some searches, but couldn't really find what I'm looking for. I have a file formatted as below: BOF ABC CO - XYZ COMM DATA OF 07/05/2011 EBA00000001 sdfa rtyus uyml EBB00000001 54682 984w3 EBA00000002 mkiyuasdf 98234 I want to pull the date from the header record and add it... (4 Replies)
Discussion started by: keeferb
4 Replies

4. Shell Programming and Scripting

Specific Header after every 30 records

Hi All, I have got a requirement. I have a source file, EMPFULL.txt and I need to split the data for every 30 records and place a Typical Header as below with system and page number too. 2012.01.03 Employee Dept Report 1... (6 Replies)
Discussion started by: srk409
6 Replies

5. Shell Programming and Scripting

[Solved] Printing a part of the last line of the specific part of a file

Hi, I have 80 large files, from which I want to get a specific value to run a Bash script. Firstly, I want to get the part of a file which contains this: Name =A xxxxxx yyyyyy zzzzzz aaaaaa bbbbbb Value = 57 This is necessary because in a file there are written more lines which... (6 Replies)
Discussion started by: wenclu
6 Replies

6. Shell Programming and Scripting

Reading text file, comparing a value in a line, and placing only part of the line in a variable?

I need some help. I would like to read in a text file. Take a variable such as ROW-D-01, compare it to what's in one line in the text file such as PROD/VM/ROW-D-01 and only input PROD/VM into a variable without the /ROW-D-01. Is this possible? any help is appreciated. (2 Replies)
Discussion started by: xChristopher
2 Replies

7. Shell Programming and Scripting

Copy header values into records

I'm using a shell script to manipulate a data file. I have a large file with two sets of data samples (tracking memory consumption) taken over a long period of time, so I have many samples. The problem is that all the data is in the same file so that each sample contains two sets of data.... (2 Replies)
Discussion started by: abercrom
2 Replies

8. Shell Programming and Scripting

How to add a status once a step is complete on the header part of a menu?

Hi Guru's, i am creating a script that will update menu of either complete or failed. #!/bin/bash choice=0 while do echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "" echo " ###############################################" echo " # Choose... (3 Replies)
Discussion started by: reignangel2003
3 Replies

9. UNIX for Beginners Questions & Answers

Help in printing records where there is a 'header' in the first record ???

Hi, I have a backup report that unfortunately has some kind of hanging indent thing where the first line contains one column more than the others I managed to get the output that I wanted using awk, but just wanting to know if there is short way of doing it using the same awk Below is what... (2 Replies)
Discussion started by: newbie_01
2 Replies

10. UNIX for Beginners Questions & Answers

How to make a loop to read the input from a file part by part?

Hi All, We've a VDI infrastructure in AWS (AWS workspaces) and we're planning to automate the process of provisioning workspaces. Instead of going to GUI console, and launching workspaces by selecting individual users is little time consuming. Thus, I want to create them in bunches from AWS CLI... (6 Replies)
Discussion started by: arun_adm
6 Replies
DUMP(5) 							File Formats Manual							   DUMP(5)

NAME
dump, ddate - incremental dump format SYNOPSIS
#include <sys/types.h> #include <sys/ino.h> # include <dumprestor.h> DESCRIPTION
Tapes used by dump and restor(1) contain: a header record two groups of bit map records a group of records describing directories a group of records describing files The format of the header record and of the first record of each description as given in the include file <dumprestor.h> is: NTREC is the number of 512 byte records in a physical tape block. MLEN is the number of bits in a bit map word. MSIZ is the number of bit map words. The TS_ entries are used in the c_type field to indicate what sort of header this is. The types and their meanings are as follows: TS_TAPE Tape volume label TS_INODE A file or directory follows. The c_dinode field is a copy of the disk inode and contains bits telling what sort of file this is. TS_BITS A bit map follows. This bit map has a one bit for each inode that was dumped. TS_ADDR A subrecord of a file description. See c_addr below. TS_END End of tape record. TS_CLRI A bit map follows. This bit map contains a zero bit for all inodes that were empty on the file system when dumped. MAGIC All header records have this number in c_magic. CHECKSUM Header records checksum to this value. The fields of the header structure are as follows: c_type The type of the header. c_date The date the dump was taken. c_ddate The date the file system was dumped from. c_volume The current volume number of the dump. c_tapea The current number of this (512-byte) record. c_inumber The number of the inode being dumped if this is of type TS_INODE. c_magic This contains the value MAGIC above, truncated as needed. c_checksum This contains whatever value is needed to make the record sum to CHECKSUM. c_dinode This is a copy of the inode as it appears on the file system; see filsys(5). c_count The count of characters in c_addr. c_addr An array of characters describing the blocks of the dumped file. A character is zero if the block associated with that character was not present on the file system, otherwise the character is non-zero. If the block was not present on the file system, no block was dumped; the block will be restored as a hole in the file. If there is not sufficient space in this record to describe all of the blocks in a file, TS_ADDR records will be scattered through the file, each one picking up where the last left off. Each volume except the last ends with a tapemark (read as an end of file). The last volume ends with a TS_END record and then the tape- mark. The structure idates describes an entry of the file /etc/ddate where dump history is kept. The fields of the structure are: id_name The dumped filesystem is `/dev/id_nam'. id_incno The level number of the dump tape; see dump(1). id_ddate The date of the incremental dump in system format see types(5). FILES
/etc/ddate SEE ALSO
dump(1), dumpdir(1), restor(1), filsys(5), types(5) DUMP(5)
All times are GMT -4. The time now is 05:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy