Substitution doesn't happen in single-quotes, no, even if you surround it by double quotes. You have to end the single quotes in an ugly mess like
This has an unfortunate side-effect: If any of the string contains valid (or worse, invalid) awk code, it will be considered part of the awk statement and executed. Meaning, someone could feed an " || system("rm -Rf ~/"); into it and get it executed...
It's far cleaner and better and safer to pass them explicitly with -v:
I noticed my script is not passing the value of variable alert to the rsh command. I need some assistance, please. This is a solaris environement. Thanks! :confused:
#!/bin/sh
echo -n "Alert number:"
read alert
rsh rhost_name 'egrep $alert /opt/var/log/*.logs' (2 Replies)
Hi.
I need to parse file and assign some values to variables, right now i do like below
MYHOMEDIR=`awk '/Home/ {print $NF}' output.txt`
MYSHELL=`awk '/Shell/ {print $NF}' output.txt`
PRGRP=`awk '/Primary/ {print $NF}' output.txt`
SECGRP=`awk '/Second/ {print $NF}' output.txt`
In this... (10 Replies)
Using ksh to call a function which has awk script embedded.
It parses a long two element list file, filled with text numbers (I want column 2, beginning no sooner than line 45, that's the only known thing) . It's unknown where to start or end the data collection, dynamic variables will be used. ... (1 Reply)
I'm trying to use awk to write new entries to a hosts file if they don't exist. I need to do so depending on the type of system I have. Below is what I have, but it isn't working.
awk -v myip1=$IP1 myip2=$IP2 myhost1=$HOST1 myhost2=$HOST2' BEGIN { mqhost1=0; mqhost2=0; stap1=0; stap2=0; }
... (4 Replies)
Hi guys,
I need to fetch data from logfile between two given dates,i got the below code from our forum.It works perfect,but i need to enter the value dynamically to awk while running.
awk '/2012 Jun/{p=1}!/2012 Jul/ && prev~/2012 Jul/ && p{p=0}{prev=$0}p' file
i tried the below code,but... (4 Replies)
Hi All,
Iam trying to pass global shell variables and is not working
Main script is like below
CYEAR=`date +"%y"`
CFYEAR=`date +"%Y"`
CMONTH=`date +"%m"`
if
then
PMONTH=12
PYEAR=`expr $CYEAR - 1`
PFYEAR=`expr $CFYEAR - 1`
else
PMONTH=`expr... (6 Replies)
Am looking to pass some Linux environment variables into AWK , can I simply use the -v option ?
awk -F: -v AHOME=$HOME '{ if
{rm AHOME/file.txt
a=2 } }'
config.txt
... (4 Replies)
Hello, new to the forums and to awk. Glad to be here. :o
I want to pass two shell (#!/bin/sh) variables through to awk and use them. They will determine where to start and stop text extraction.
The code with the variables hard-coded in awk works fine; the same code, but with the shell... (7 Replies)
Perl::Critic::Policy::ValuesAndExpressions::RequireInterUsertContrPerl::Critic::Policy::ValuesAndExpressions::RequireInterpolationOfMetachars(3pm)NAME
Perl::Critic::Policy::ValuesAndExpressions::RequireInterpolationOfMetachars - Warns that you might have used single quotes when you really
wanted double-quotes.
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
This policy warns you if you use single-quotes or "q//" with a string that has unescaped metacharacters that may need interpolation. Its
hard to know for sure if a string really should be interpolated without looking into the symbol table. This policy just makes an educated
guess by looking for metacharacters and sigils which usually indicate that the string should be interpolated.
Exceptions
o Variable names to "use vars":
use vars '$x'; # ok
use vars ('$y', '$z'); # ok
use vars qw< $a $b >; # ok
o Things that look like e-mail addresses:
print 'john@foo.com'; # ok
$address = 'suzy.bar@baz.net'; # ok
CONFIGURATION
The "rcs_keywords" option allows you to stop this policy from complaining about things that look like RCS variables, for example, in
deriving values for $VERSION variables.
For example, if you've got code like
our ($VERSION) = (q<$Revision: 4106 $> =~ m/(d+)/mx);
You can specify
[ValuesAndExpressions::RequireInterpolationOfMetachars]
rcs_keywords = Revision
in your .perlcriticrc to provide an exemption.
NOTES
Perl's own "warnings" pragma also warns you about this.
SEE ALSO
Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals
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.2Perl::Critic::Policy::ValuesAndExpressions::RequireInterpolationOfMetachars(3pm)