The command you have does not have a way to determine which line in the other file to get field2 from in order to insert into temp3. If you have a list of data you want to replace field2 with in temp2 then you can execute a for loop to complete your task.
Code:
list.txt contains
john
sally
mike
for name in $(< list.txt); do
nawk -F'|' -v OFS='|' '$2="$name"' temp2 > temp3
done
An alternative would be the file you want field2 from has the same number of lines and is pipe delimited just like file temp2.
Code:
IFS="|"
cat file_with_field2 | while read field1 field2 rest ; do
nawk -F'|' -v OFS='|' '$2="$field2"' temp2 > temp3
done
Else you need to provide more information about the content of file1 and file2 along with the desired output.
Hello all,
I've a CSV file and need to replace 5th field if its value is "X".
The exact requirement is to replace 5th field (column) with "Y" if
a. it's value is "X" AND
b. the line must start with ABC string
i guess this can be done with awk. Pl help.
For security reasons, the... (2 Replies)
Hi,
I am new to unix and am trying to do something below:
I have a pipe delimited file with millions of records. I need to replace the third column of the first record to the number of lines in the file. How can I do that.
Will appreciate any advice and help.
Thanks
Simi (3 Replies)
Hi,
I've internally searched through forums for about 2+ hours. Unfortunately, with no luck. Although I've found some cases close to mine below, but didn't help so much.
Actually, I'm in short with time. So I had to post my case. Hoping that you can help.
I have 2 files,
FILE1
... (0 Replies)
Hi,
I've internally searched through forums for about 2+ hours. Unfortunately, with no luck. Although I've found some cases close to mine below, but didn't help so much.
Actually, I'm in short with time. So I had to post my case. Hoping that you can help.
I have 2 files,
FILE1
... (1 Reply)
Something like vlookup in excel, column 2 in file 2 is blank and should be replaced by column 2 in file 1 based on comparing column 1 in both files.
file1
Code:
1234~abc~b~c~d~e~f~g~h~09/10/09
5678~def~b~c~d~e~f~g~h~12/06/10
8910~hij~b~c~d~e~f~g~h~03/28/13... (1 Reply)
Hi Friends,
Need Help. I have file1.txt as
File1.txt
|123|A|7267|Hyder|Cross|Sell|7801
|995|A|7051|2008|Lunar|New|Year|Promotion|7801
|996|A|7022|Q108|Targ|Prospect|&|SSCC|Savings|Promo|7801
|997|A|7182|Q1|Feb-Apr|08|Credit|ITA|PA|SBA|Campaign|7801
File2.txt... (7 Replies)
Hi Freinds,
I have 2 files . one is source.txt and second one is target.txt. I want to keep source.txt as baseline and compare target.txt. please find the data in 2 files and Expected output.
Source.txt
1|HYD|NAG|TRA|34.5|1234
2|CHE|ESW|DES|36.5|134
3|BAN|MEH|TRA|33.5|234... (5 Replies)
I have a .CSV file (file.csv) whose data are all enclosed in double quotes. Sample format of the file is as below:
column1,column2,column3,column4,column5,column6, column7, Column8, Column9, Column10
"12","B000QRIGJ4","4432","string with quotes, and with a comma, and colon: in... (3 Replies)
Hi,
Need to replace last field in a file(/etc/passwd) ,if first filed matches with particular username.
Scenario:
cat testfor1
deekshi:x:7082:7082::/home/deekshi:/bin/bash
harini1:x:7083:7083::/home/harini1:/bin/bash
Here,if first field contains "deekshi", then i should replace... (4 Replies)
Discussion started by: Sumanthsv
4 Replies
LEARN ABOUT DEBIAN
webservice::cia
WebService::CIA(3pm) User Contributed Perl Documentation WebService::CIA(3pm)NAME
WebService::CIA - Get information from the CIA World Factbook.
SYNOPSIS
use WebService::CIA;
use WebService::CIA::Source::DBM;
use WebService::CIA::Source::Web;
# Get data from a pre-compiled DBM file
my $source = WebService::CIA::Source::DBM->new({ DBM => "factbook.dbm" });
my $cia = WebService::CIA->new({ Source => $source });
$fact = $cia->get("uk", "Population");
print $fact;
# Get data direct from the CIA World Factbook
my $source = WebService::CIA::Source::Web->new();
my $cia = WebService::CIA->new({ Source => $source });
$fact = $cia->get("uk", "Population");
print $fact;
DESCRIPTION
A module which gets information from the CIA World Factbook.
Crypt::SSLeay
The most recent version of the CIA World Factbook uses HTTPS to access its web pages. As such, WebService::CIA requires Crypt::SSLeay which
suffers from the usual cryptographic export restriction mumbo jumbo. Sorry about that.
Users of ActiveState's ActivePerl should see <http://aspn.activestate.com/ASPN/Downloads/ActivePerl/PPM/Repository> for instructions on
downloading a PPM of Crypt::SSLeay.
METHODS
"new(\%opts)"
Creates a new WebService::CIA object. Takes a hashref, which must contain a "Source" key whose value is a WebService::CIA::Storage
object.
"get($country_code, $field)"
This method retrieves information from the store.
It takes two arguments: a country code (as defined in FIPS 10-4 on <https://www.cia.gov/library/publications/the-world-factbook/appen-
dix/appendix-d.html>, e.g. "uk", "us") and a field name (as defined in <https://www.cia.gov/library/publications/the-world-fact-
book/docs/notesanddefs.html>, e.g. "Population", "Agriculture - products"). (WebService::CIA::Parser also creates four extra fields:
"URL", "URL - Print", "URL - Flag", and "URL - Map" which are the URLs of the country's Factbook page, the printable version of that
page, a GIF map of the country, and a GIF flag of the country respectively.)
The field name is very case and punctuation sensitive.
It returns the value of the field, or "undef" if the field or country isn't in the store.
Note that when using WebService::CIA::Store::Web, "get" will also return "undef" if there is an error getting the page.
"get_hashref(@countries, @fields)"
This method takes two arguments: an arrayref of country codes and an arrayref of field names.
It returns a hashref of the form
{
'country1' => {
'field1' => 'value',
'field2' => 'value'
},
'country2' => {
'field1' => 'value',
'field2' => 'value'
}
}
"get_all_hashref(@countries)"
Get all the fields available for countries.
It takes one argument, an arrayref of country codes.
It returns a hashref similar to the one from "get_hashref" above, containing all the fields available for each country.
"source()"
Get a reference to the WebService::CIA::Source object in use.
CONFIGURATION VARIABLES
$WebService::CIA::base_url
Sets the base URL for the Factbook (currently "https://www.cia.gov/library/publications/the-world-factbook/"). If the Factbook changes
location, this can be changed to point to the new location (assuming the relative structure of the Factbook is unchanged).
AUTHOR
Ian Malpass (ian-cpan@indecorous.com)
COPYRIGHT
Copyright 2003-2007, Ian Malpass
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The CIA World Factbook's copyright information page (<https://www.cia.gov/library/publications/the-world-factbook/docs/contributor_copy-
right.html>) states:
The Factbook is in the public domain. Accordingly, it may be copied
freely without permission of the Central Intelligence Agency (CIA).
SEE ALSO
WebService::CIA::Parser, WebService::CIA::Source::DBM, WebService::CIA::Source::Web
perl v5.8.8 2008-02-04 WebService::CIA(3pm)