Coming back to original question, how to achieve this by passing variable to awk. ---------- Post updated at 09:40 AM ---------- Previous update was at 09:39 AM ----------
$1 will be overwritten...
to avoid that, first store the passed argument and then use set.
Hi,
Can i pass a parameter(not a file name) as a parameter to a awk program?
eg;
$awk -f test 1 2 3
here test is the filename...and 1,2,3 are the i/p parameters?
thank you:-) (2 Replies)
Hi,
My script takes in one input parameter($1-email id) on the command line...
The script contains something like this...
awk '$1 == 400' abc.log >def.log
mail -s subject $1 <def.log
abc.log looks something like this...
300 222 330 123 445
400 098 890 727 663
How do i make the... (3 Replies)
hi guys
i need your help , i wrote one script which is as below
#!/bin/ksh
###########################################################
LOGDIR=/export/home/xyz/logs
EMAILFile=$LOGDIR/xxs_email.log
BOX=$(uname -a | awk '{print $2}')
awk '{if ($4 >= 30) {print $1 " " $3 " HAS LAG of "... (1 Reply)
Hi All,
I am trying to pass a parameter to AWK on my KSH shell prompt as below.
var1=2
echo $var1
awk -v var2=${var1} '{print var2}' testfile.txt
I am passing the input file (testfile) to awk to get some o/p. It is having 10 records.
When I run AWK, it is throwing the following errors... (1 Reply)
Hi
var=0001
I want to replace 2nd field of file with variable var in file sample.txt
Please suggest with awk. dont want to use awk -v option.
pseudo code : something like this.
var=0001
awk '{ 12193 /var } {print $0 }' sample.txt (2 Replies)
In below script parameterwhich i am passing to awk function is not working.Not sure why its not accepting parameter.Please tell me how to pass parameter to the awk function.Please check the below script.
#!/bin/ksh
dummy_file=/etlapps/dev/data/sub_servicer_data/ScriptLogs/emp.txt
fields=5... (2 Replies)
Hi,
I have a situation where I need to create a SQL statement using Unix script for each value in first field (ID). The file looks like this.
Id,TARGET_FIELD_NAME,SOURCE_FIELD_NAME
1,Test_Rate,Field1
1,Test_Factor,Field2
1,Test_Size,Field3
2,Test_Rate,Field4
2,Test_Factor,Field5... (3 Replies)
Can I specify a default value to a variable in AWK like BASH in one statement using parameter substitution?
BASH example:
argument=${$1-"default if empty"} (BASH)
I know I can do:
argument=$1; sub ( "^$", "default if empty", argument) (AWK)
Mike (13 Replies)
Discussion started by: Michael Stora
13 Replies
LEARN ABOUT V7
escape
escape(1) Mail Avenger 0.8.3 escape(1)NAME
escape - escape shell special characters in a string
SYNOPSIS
escape string
DESCRIPTION
escape prepends a "" character to all shell special characters in string, making it safe to compose a shell command with the result.
EXAMPLES
The following is a contrived example showing how one can unintentionally end up executing the contents of a string:
$ var='; echo gotcha!'
$ eval echo hi $var
hi
gotcha!
$
Using escape, one can avoid executing the contents of $var:
$ eval echo hi `escape "$var"`
hi ; echo gotcha!
$
A less contrived example is passing arguments to Mail Avenger bodytest commands containing possibly unsafe environment variables. For
example, you might write a hypothetical reject_bcc script to reject mail not explicitly addressed to the recipient:
#!/bin/sh
formail -x to -x cc -x resent-to -x resent-cc
| fgrep "$1" > /dev/null
&& exit 0
echo "<$1>.. address does not accept blind carbon copies"
exit 100
To invoke this script, passing it the recipient address as an argument, you would need to put the following in your Mail Avenger rcpt
script:
bodytest reject_bcc `escape "$RECIPIENT"`
SEE ALSO avenger(1),
The Mail Avenger home page: <http://www.mailavenger.org/>.
BUGS
escape is designed for the Bourne shell, which is what Mail Avenger scripts use. escape might or might not work with other shells.
AUTHOR
David Mazieres
Mail Avenger 0.8.3 2012-04-05 escape(1)