03-27-2012
The difference with the earlier
explanation given by
itkamaraj is
!A[$4]++ . This means if the value in array A of element is zero (if NOT (!) it is 1 or more) then perform the action in curly brackets. After the comparison the value of the element is incremented by 1, so the next time the same $4 is encountered later in the file, the expression evaluates to 0 (since the array element is not 1 and it is negated by the ! ), so the second time and any time after that, the action in curly brackets is not performed (in this case
{print $4} )
This User Gave Thanks to Scrutinizer For This Post:
10 More Discussions You Might Find Interesting
1. Filesystems, Disks and Memory
Hi
I have 2 75GB SCSI hard drives and 2 250GB SATA hard drives which are using RAID Level 1 respectively. I wana have both FTP and Apache installed on them as services. I'm wondering what's the best partitioning schem? I wana use FC3 as my OS, so, I thought I can use the 75GB hard drive as the /... (0 Replies)
Discussion started by: sirbijan
0 Replies
2. UNIX for Dummies Questions & Answers
About associative nature of awk arrays i'm still confused, not able to understand yet how array element can be accessed based on a string, I got one example at gawk manual to illustrate associative nature of awk arrays, it goes here:
Codeawk '
# Print list of word frequencies
{
for (i = 1;... (3 Replies)
Discussion started by: nervous
3 Replies
3. UNIX for Dummies Questions & Answers
i am not able to understand the following code for awk:
$awk -F"|" '{ kount++}
>END { for (desig in kount)
> print desig,kount }' emp.list
the input file i.e. emp.list is ::
3432| p.k.agrwal |g.m |sales
4566|g.l.sharma |director|production
3433|r shah | g.m | production... (1 Reply)
Discussion started by: streetfi8er
1 Replies
4. Shell Programming and Scripting
I learn using RS in awk to extract portion of file in this forum which is wonderful solution to the problem. However, I don't understand how exactly it operates.
I don't quite understand the mechanism behind how searching for /DATA2/ can result in extracting the whole section under "DATA2"
... (3 Replies)
Discussion started by: joe228
3 Replies
5. Shell Programming and Scripting
Hi Guys,
Can someone please explain this code to me. I could figure out it's adding and comparing two fields but I am not sure which ones.
sort -t"|" -k3.1 /tmp/mpcashqc.xtr| awk -F"|" '{CHECKAMT+=$3;BATCHTOT=$4;\
items++}END{for(i in CHECKAMT) if (CHECKAMT!=BATCHTOT)... (6 Replies)
Discussion started by: nua7
6 Replies
6. Shell Programming and Scripting
Hello,
I have the following script :
BEGIN {
print "1 ***";
split("abc",T,"");
T="e";
T="z";
T="y";
for (i in T) printf("%i:%s ",i,T); print "";
for (i=1; i<=length(T); i++) printf(T); print ""
print "2 ***";
asort(T,U);
for (i in U) printf("%i:%s ",i,U); ... (3 Replies)
Discussion started by: jgilot
3 Replies
7. Shell Programming and Scripting
While working on awk programming, i found that it doesn't understand 'read' statement. Then what's the use of 'continue' and 'break' statement in awk.
For ex:
awk '{k=1; while (k<10) {print $0; k++}}' emp.lst
Now, please say if I want to put the logic that after priting 1 line, it will ask for... (13 Replies)
Discussion started by: ravisingh
13 Replies
8. UNIX for Dummies Questions & Answers
Hi
below is the samll awk script which i am not able to understand properly.
here a bit confusion in 2nd line for me
1. why *\ is not used before . in second line as it was used in first line *\$*\. */
2. why always \ is used in every first line
3. is there any specific meaning... (9 Replies)
Discussion started by: scriptor
9 Replies
9. Shell Programming and Scripting
Hey guys, my first post here.
I'm trying to use awk to copy all matching paragraphs from one file
The file looks like this :
Test Case Number 990990003099
Card Type CCCC
Transaction Type Sale
Entry Mode Keyed
Account Number 4099562299219923
Transaction Amount 78.88
Description lorem... (2 Replies)
Discussion started by: awkawed
2 Replies
10. UNIX for Beginners Questions & Answers
Help understand awk command
This command converts the column values to rows.
Command:
awk -s1=" " '{S=S?S OFS s1 $0 s1:s1 $0 s1} END{print S}' OFS=, Input_file
Example:
1
2
3
is converted to:
1, 2, 3
Can anyone please help me understand this command?
Please use code tags when... (1 Reply)
Discussion started by: mohan44
1 Replies
LEARN ABOUT DEBIAN
mojo::url
Mojo::URL(3pm) User Contributed Perl Documentation Mojo::URL(3pm)
NAME
Mojo::URL - Uniform Resource Locator
SYNOPSIS
use Mojo::URL;
# Parse
my $url
= Mojo::URL->new('http://sri:foobar@kraih.com:3000/foo/bar?foo=bar#23');
say $url->scheme;
say $url->userinfo;
say $url->host;
say $url->port;
say $url->path;
say $url->query;
say $url->fragment;
# Build
my $url = Mojo::URL->new;
$url->scheme('http');
$url->userinfo('sri:foobar');
$url->host('kraih.com');
$url->port(3000);
$url->path('/foo/bar');
$url->path('baz');
$url->query->param(foo => 'bar');
$url->fragment(23);
say $url;
DESCRIPTION
Mojo::URL implements a subset of RFC 3986 and RFC 3987 for Uniform Resource Locators with support for IDNA and IRIs.
ATTRIBUTES
Mojo::URL implements the following attributes.
"authority"
my $authority = $url->authority;
$url = $url->authority('root:pass%3Bw0rd@localhost:8080');
Authority part of this URL.
"base"
my $base = $url->base;
$url = $url->base(Mojo::URL->new);
Base of this URL.
"fragment"
my $fragment = $url->fragment;
$url = $url->fragment('foo');
Fragment part of this URL.
"host"
my $host = $url->host;
$url = $url->host('127.0.0.1');
Host part of this URL.
"port"
my $port = $url->port;
$url = $url->port(8080);
Port part of this URL.
"scheme"
my $scheme = $url->scheme;
$url = $url->scheme('http');
Scheme part of this URL.
"userinfo"
my $userinfo = $url->userinfo;
$url = $url->userinfo('root:pass%3Bw0rd');
Userinfo part of this URL.
METHODS
Mojo::URL inherits all methods from Mojo::Base and implements the following new ones.
"new"
my $url = Mojo::URL->new;
my $url = Mojo::URL->new('http://127.0.0.1:3000/foo?f=b&baz=2#foo');
Construct a new Mojo::URL object.
"clone"
my $url2 = $url->clone;
Clone this URL.
"ihost"
my $ihost = $url->ihost;
$url = $url->ihost('xn--bcher-kva.ch');
Host part of this URL in punycode format.
# "xn--da5b0n.net"
Mojo::URL->new('http://X.net')->ihost;
"is_abs"
my $success = $url->is_abs;
Check if URL is absolute.
"parse"
$url = $url->parse('http://127.0.0.1:3000/foo/bar?fo=o&baz=23#foo');
Parse URL.
"path"
my $path = $url->path;
$url = $url->path('/foo/bar');
$url = $url->path('foo/bar');
$url = $url->path(Mojo::Path->new);
Path part of this URL, relative paths will be appended to the existing path, defaults to a Mojo::Path object.
# "http://mojolicio.us/DOM/HTML"
Mojo::URL->new('http://mojolicio.us/perldoc/Mojo')->path('/DOM/HTML');
# "http://mojolicio.us/perldoc/DOM/HTML"
Mojo::URL->new('http://mojolicio.us/perldoc/Mojo')->path('DOM/HTML');
# "http://mojolicio.us/perldoc/Mojo/DOM/HTML"
Mojo::URL->new('http://mojolicio.us/perldoc/Mojo/')->path('DOM/HTML');
"query"
my $query = $url->query;
$url = $url->query(replace => 'with');
$url = $url->query([merge => 'with']);
$url = $url->query({append => 'to'});
$url = $url->query(Mojo::Parameters->new);
Query part of this URL, defaults to a Mojo::Parameters object.
# "2"
Mojo::URL->new('http://mojolicio.us?a=1&b=2')->query->param('b');
# "http://mojolicio.us?a=2&c=3"
Mojo::URL->new('http://mojolicio.us?a=1&b=2')->query(a => 2, c => 3);
# "http://mojolicio.us?a=2&b=2&c=3"
Mojo::URL->new('http://mojolicio.us?a=1&b=2')->query([a => 2, c => 3]);
# "http://mojolicio.us?b=2"
Mojo::URL->new('http://mojolicio.us?a=1&b=2')->query([a => undef]);
# "http://mojolicio.us?a=1&b=2&a=2&c=3"
Mojo::URL->new('http://mojolicio.us?a=1&b=2')->query({a => 2, c => 3});
"to_abs"
my $abs = $url->to_abs;
my $abs = $url->to_abs(Mojo::URL->new('http://kraih.com/foo'));
Clone relative URL and turn it into an absolute one.
"to_rel"
my $rel = $url->to_rel;
my $rel = $url->to_rel(Mojo::URL->new('http://kraih.com/foo'));
Clone absolute URL and turn it into a relative one.
"to_string"
my $string = $url->to_string;
Turn URL into a string.
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.
perl v5.14.2 2012-09-05 Mojo::URL(3pm)