04-11-2012
Two shell variables using nawk
How do you use two shell variables in awk? I am using Solaris 10 and don't have GNU products installed.
File (transportation.txt) contents:
car make
boat model
airplane landing
snowmobile track
bicycle helmet
sled housing
Thanks to this forum this code works (prints everything from the contents of $vehicle to bicycle):
nawk -v v="$vehicle" 'match( $0, v ),/bicycle/' transportation.txt
But how do I replace bicycle with another variable? For arguments sake call it $vechicle2.
Also, will the above nawk code work with a string? For example if the contents of $vechicle equals boat model
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi guy's
Im trying to pass variables into nawk and then match them on a value within a record but it don't seem to be working. If i put in the dates i want to see then it works fine..
#!/usr/bin/ksh -x
YEST=$(/usr/local/bin/perl -e... (8 Replies)
Discussion started by: plimpix
8 Replies
2. Shell Programming and Scripting
I do a lot of command line scripting to capture data from files or other command output. I've checked in a number of Unix and scripting books but for the life of me I can't find out how to asign field data from nawk output into variables that I can manipulate later. For example, reading a two... (6 Replies)
Discussion started by: steveje0711
6 Replies
3. Shell Programming and Scripting
Hi,
I am passing the varibale using nawk -v to search the pattern from the file. But this variable is not accepting. I couldn't get the crrect output. Help me regarding.....
nawk -v PGMNAME="$prog" ' {
$0 ~ /PGMNAME/ {
..................
.................
... (3 Replies)
Discussion started by: sharif
3 Replies
4. Shell Programming and Scripting
Ok, So up front I'm going to say that I'm a very elementary scripter, and I tend to use tools I don't fully understand, but I shotgun at something until I can get it to work...that said, I can't for the life of me understand why I can't get this to go down the way I want it to.
The goal:
-to... (6 Replies)
Discussion started by: DeCoTwc
6 Replies
5. Shell Programming and Scripting
i'm new to shell scripting and have a problem please help me
in the script i have a nawk block which has a variable count
nawk{
.
.
.
count=count+1
print count
}
now i want to access the value of the count variable outside the awk block,like..
s=`expr count / m`
(m is... (5 Replies)
Discussion started by: saniya
5 Replies
6. Shell Programming and Scripting
nawk '($1 ~ "1000") && ($1 ~ "5665" ) { sub ($6,"89");flag =1;print }' old.txt >> new.txt I want to set a flag in awk , if the both conditions are met. I want to pass this flag to shell Can anyone please help me on this (1 Reply)
Discussion started by: prav076
1 Replies
7. Shell Programming and Scripting
Hi,
I need to break an input file into multiple output files. The number of output files is decided by a maximum record count allowed for each file.
Hence I am using the nawk command to recursively retrieve a range of lines from an input file and write them to output files. But I am unable to... (3 Replies)
Discussion started by: ragz_82
3 Replies
8. Shell Programming and Scripting
Hi,
Is it possible in awk/nawk to pass two or more variables in the -v flag? That is:
X=1
Y=2
nawk -v X=$X Y=$Y.....
Thanks in advance. (7 Replies)
Discussion started by: daytripper1021
7 Replies
9. Shell Programming and Scripting
Hi - The following nawk is not working and trying to understand why!
nawk -v t="internal_order" '/SAP_RM_ADMIN_SCHEMA/ && ("" toupper(t)) || /SAP_RM_ADMIN_SCHEMA/ && ("" tolower(t))' PBFD100.ksh
My intention is to retrieve the line containing SAP_RM_ADMIN_SCHEMA.internal_order but its just not... (6 Replies)
Discussion started by: anduzzi
6 Replies
10. Shell Programming and Scripting
I have a file that has 2 fields called b_file:
11977 DAR.V3.20150209.1.CSV
3295 DAR.V3.20150209.1.CSV
1721 DAR.V2.20150210.1.CSV
I need to search a sftplog using the field 1, but want to maintain the relationship between field 1 and 2. I am passing field 1 as a parameter in a bash loop.
... (14 Replies)
Discussion started by: smenago
14 Replies
LEARN ABOUT DEBIAN
perl::critic::policy::variables::requirelexicalloopiterators
Perl::Critic::Policy::Variables::RequireLexicalLoopIteraUser(Contributed Perl DocPerl::Critic::Policy::Variables::RequireLexicalLoopIterators(3pm)
NAME
Perl::Critic::Policy::Variables::RequireLexicalLoopIterators - Write "for my $element (@list) {...}" instead of "for $element (@list)
{...}".
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
This policy asks you to use "my"-style lexical loop iterator variables:
foreach my $zed (...) {
...
}
Unless you use "my", "for"/"foreach" loops use a global variable with its value "local" to the block. In other words,
foreach $zed (...) {
...
}
is more-or-less equivalent to
{
local $zed
foreach $zed (...) {
...
}
}
This may not seem like a big deal until you see code like
my $bicycle;
for $bicycle (@things_attached_to_the_bike_rack) {
if (
$bicycle->is_red()
and $bicycle->has_baseball_card_in_spokes()
and $bicycle->has_bent_kickstand()
) {
$bicycle->remove_lock();
last;
}
}
if ( $bicycle and $bicycle->is_unlocked() ) {
ride_home($bicycle);
}
which is not going to allow you to arrive in time for dinner with your family because the $bicycle outside the loop is not changed by the
loop. You may have unlocked your bicycle, but you can't remember which one it was.
Lexical loop variables were introduced in Perl 5.004. This policy does not report violations on code which explicitly specifies an earlier
version of Perl (e.g. "require 5.002;").
CONFIGURATION
This Policy is not configurable except for the standard options.
SEE ALSO
"Foreach Loops" in perlsyn
"my() in Control Structures" in perl5004delta
AUTHOR
Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>
COPYRIGHT
Copyright (c) 2005-2011 Imaginative Software Systems. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license
can be found in the LICENSE file included with this module.
perl v5.14.2 2012-06-07 Perl::Critic::Policy::Variables::RequireLexicalLoopIterators(3pm)