Sponsored Content
Full Discussion: update a file by key
Top Forums Shell Programming and Scripting update a file by key Post 302112073 by ynixon on Sunday 25th of March 2007 06:52:52 PM
Old 03-25-2007
update a file by key

Hi,
I am trying to update a MASTER file by a NEW file which may contain fewer records.
The update should use a key (2 first fields), here is a senario:
MASTER:
a;b;0
a;c;0
a;d;0

NEW:
a;c;1

the result should be:
a;b;0
a;c;1
a;d;0

can you recommend me a way to do it?

10x
Y.N.

Last edited by ynixon; 03-25-2007 at 08:01 PM..
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Pressing backspace key simulates enter key

Hi, Whenever i press the backspace key, a new line appears, i.e. it works like a enter key. :confused: Thanks (2 Replies)
Discussion started by: vibhor_agarwali
2 Replies

2. Shell Programming and Scripting

Using Key to get data from second file

I posted a problem last week that had essentially two steps. Someone was kind enough to help me with the first step, but beacuse I didn't explain things well, left out the second step. I'm required to work in C Shell. I deeply appreciate any help, since I've never worked in a shell language... (4 Replies)
Discussion started by: bassmaster
4 Replies

3. UNIX for Dummies Questions & Answers

Remove VI encryption key from file

Hi There, I have set encryption key to my file using :X command. Now that I no more need encryption key to the file, I just want to delete/remove the encryption key. I have gone through many source but in vain. None of the source provided me with the solution that I am looking for. I... (2 Replies)
Discussion started by: grc
2 Replies

4. Solaris

Solaris 8 ssh public key authentication issue - Server refused our key

Hi, I've used the following way to set ssh public key authentication and it is working fine on Solaris 10, RedHat Linux and SuSE Linux servers without any problem. But I got error 'Server refused our key' on Solaris 8 system. Solaris 8 uses SSH2 too. Why? Please help. Thanks. ... (1 Reply)
Discussion started by: aixlover
1 Replies

5. Shell Programming and Scripting

Shell Script @ Find a key word and If the key word matches then replace next 7 lines only

Hi All, I have a XML file which is looks like as below. <<please see the attachment >> <?xml version="1.0" encoding="UTF-8"?> <esites> <esite> <name>XXX.com</name> <storeId>10001</storeId> <module> ... (4 Replies)
Discussion started by: Rajeev_hbk
4 Replies

6. Shell Programming and Scripting

Searching the content of one file using the search key of another file

I have two files: file 1: hello.com neo.com,japan.com,example.com news.net xyz.com, telecom.net, highlands.net, software.com example2.com earth.net, abc.gov.uk file 2: neo.com example.com abc.gov.uk file 2 are the search keys to search in file 1 if any of the search key is... (3 Replies)
Discussion started by: csim_mohan
3 Replies

7. Shell Programming and Scripting

How to extract information a file according key id in another file?

hi, i have a large file containing the detailed information of a bunch of keys like this: JAT_0001 contig102_342_3_n2 contig102_342 atgcacgacta 30 50 20... (11 Replies)
Discussion started by: the_simpsons
11 Replies

8. Shell Programming and Scripting

Update a specific field in file with Variable value based on other Key Word

I have an input file with A=xyz B=pqr I would want the value in Second Field (xyz or pqr) updated with a value present in Shell Variable based on the value passed in the first field. (A or B ) while read line do NEW_VALUE = `some functionality done on $line` If $line=First Field-... (1 Reply)
Discussion started by: infernalhell
1 Replies

9. UNIX for Beginners Questions & Answers

Getting count of Key in another file

Hi All, I need to find the count of key occurrence from one file corresponding to another file. Any help please. I am planning to read the CUST_ID in a while loop and do a grep , is there a way to do easier CUST_ID 677582806078 687582821181 687582828910 687582834580 687582834849... (1 Reply)
Discussion started by: arunkumar_mca
1 Replies
Net::DNS::Update(3)					User Contributed Perl Documentation				       Net::DNS::Update(3)

NAME
Net::DNS::Update - Create a DNS update packet SYNOPSIS
use Net::DNS; $update = new Net::DNS::Update( 'example.com', 'IN' ); $update->push( prereq => nxrrset('foo.example.com. A') ); $update->push( update => rr_add('foo.example.com. 86400 A 192.168.1.2') ); DESCRIPTION
Net::DNS::Update is a subclass of Net::DNS::Packet, to be used for making DNS dynamic updates. Programmers should refer to RFC2136 for dynamic update semantics. WARNING: This code is still under development. Please use with caution on production nameservers. METHODS
new $update = new Net::DNS::Update; $update = new Net::DNS::Update( 'example.com' ); $update = new Net::DNS::Update( 'example.com', 'HS' ); Returns a Net::DNS::Update object suitable for performing a DNS dynamic update. Specifically, it creates a packet with the header opcode set to UPDATE and the zone record type to SOA (per RFC 2136, Section 2.3). Programs must use the push() method to add RRs to the prerequisite, update, and additional sections before performing the update. Arguments are the zone name and the class. If the zone is omitted, the default domain will be taken from the resolver configuration. If the class is omitted, it defaults to IN. EXAMPLES
The first example below shows a complete program; subsequent examples show only the creation of the update packet . Add a new host #!/usr/bin/perl use Net::DNS; # Create the update packet. my $update = new Net::DNS::Update('example.com'); # Prerequisite is that no A records exist for the name. $update->push( pre => nxrrset('foo.example.com. A') ); # Add two A records for the name. $update->push( update => rr_add('foo.example.com. 86400 A 192.168.1.2') ); $update->push( update => rr_add('foo.example.com. 86400 A 172.16.3.4') ); # Send the update to the zone's primary master. my $resolver = new Net::DNS::Resolver; $resolver->nameservers('primary-master.example.com'); my $reply = $resolver->send($update); # Did it work? if ($reply) { if ( $reply->header->rcode eq 'NOERROR' ) { print "Update succeeded "; } else { print 'Update failed: ', $reply->header->rcode, " "; } } else { print 'Update failed: ', $resolver->errorstring, " "; } Add an MX record for a name that already exists my $update = new Net::DNS::Update('example.com'); $update->push( prereq => yxdomain('example.com') ); $update->push( update => rr_add('example.com MX 10 mailhost.example.com') ); Add a TXT record for a name that doesn't exist my $update = new Net::DNS::Update('example.com'); $update->push( prereq => nxdomain('info.example.com') ); $update->push( update => rr_add('info.example.com TXT "yabba dabba doo"') ); Delete all A records for a name my $update = new Net::DNS::Update('example.com'); $update->push( prereq => yxrrset('foo.example.com A') ); $update->push( update => rr_del('foo.example.com A') ); Delete all RRs for a name my $update = new Net::DNS::Update('example.com'); $update->push( prereq => yxdomain('byebye.example.com') ); $update->push( update => rr_del('byebye.example.com') ); Perform a DNS update signed using a BIND key file my $update = new Net::DNS::Update('example.com'); $update->push( update => rr_add('foo.example.com A 10.1.2.3') ); $update->push( update => rr_add('bar.example.com A 10.4.5.6') ); $update->sign_tsig( "$dir/Khmac-sha512.example.com.+165+01018.private" ); The corresponding public key file may also be used: $update->sign_tsig( "$dir/Khmac-sha512.example.com.+165+01018.key" ); Another way to perform a signed update my $key_name = 'tsig-key'; my $key = 'awwLOtRfpGE+rRKF2+DEiw=='; my $update = new Net::DNS::Update('example.com'); $update->push( update => rr_add('foo.example.com A 10.1.2.3') ); $update->push( update => rr_add('bar.example.com A 10.4.5.6') ); $update->sign_tsig( $key_name, $key ); Perform a signed update with a customized TSIG record my $key_name = 'tsig-key'; my $key = 'awwLOtRfpGE+rRKF2+DEiw=='; my $tsig = new Net::DNS::RR("$key_name TSIG $key"); $tsig->fudge(60); my $update = new Net::DNS::Update('example.com'); $update->push( update => rr_add('foo.example.com A 10.1.2.3') ); $update->push( update => rr_add('bar.example.com A 10.4.5.6') ); $update->push( additional => $tsig ); BUGS
This code is still under development. Please use with caution on production nameservers. COPYRIGHT
Copyright (c) 1997-2002 Michael Fuhr. Portions Copyright (c) 2002-2004 Chris Reinhardt. All rights reserved. This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself. SEE ALSO
perl, Net::DNS, Net::DNS::Packet, Net::DNS::Header, Net::DNS::RR, Net::DNS::Resolver, RFC 2136, RFC 2845 perl v5.18.2 2014-01-16 Net::DNS::Update(3)
All times are GMT -4. The time now is 03:39 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy