What you are getting surprises me when I look into the script you post:
If you'd define the function you call correctly, this might work better (my_func_local vs. my_local_func). And, don't put $k into the quotes to have it evaluated for the system call. And, awk uses sh to run the system call. Having symlinked /bin/sh to /bin/bash, I get
Can you please specify in details what you have done to get the result ? can you post your entire script which shows the symlink ?
---------- Post updated at 11:26 PM ---------- Previous update was at 11:18 PM ----------
Quote:
Originally Posted by Corona688
The answer is simple: awk is not shell. Variables don't work that way. $ means column here, and isn't even expanded inside quotes.
What you have told me to do doesn't work. I am using utilizing the following code now-:
I am getting the following erroneous error-: ---------- Post updated at 11:30 PM ---------- Previous update was at 11:26 PM ----------
Quote:
Originally Posted by sea
As i see it, not really understanding awk yet, but you're comparing a STRING (a) with an INTEGER (k).
Anyhow, so you pass a list of variables, and when it matches a certain string, you want to call that function?
Must it be awk, because bash works just fine
Hope this helps
Can you please explain to me what your script means step by step ? Sorry for being blunt but I am comfortable with awk rather than raw shell scripting. However for this problem it does not matter what I use so if you can explain how your script works then it would be fine for my purpose.
Anybody know what's wrong with this syntax?
awk -v job="$job" 'BEGIN { FS="|"}
{print $1,$2," ",$4," ",$3\n,$5,"\n"}' list
It's keeping give me this message:
awk: syntax error near line 1
awk: bailing out near line 1
It seems awk has problem with my BEGIN command.
Any... (8 Replies)
Does anybody know how to print a variable passed to awk command?
awk -F"|" 'BEGIN {print $job,"\n","Question \n"} {print $1,$2$4," ",$3}' "job=$job1" file1
I am trying to pass job the variable job1.
the output is blank.
?? (3 Replies)
I'm trying to get awk to do arithmetic functions with external variables and I'm getting an error that I cannot figure out how to fix.
Insight would be appreciated
money=$1
rate1=$(awk -F"\t " '/'$converting'/{print $3}' convert.table)
rate2=$(awk -F"\t"... (2 Replies)
I'm an experienced awk user, but this one has me stumped. I have an awk script which is called from a UNIX command line as you'd expect:
myscript.awk -v foo=$1 -v bar=$2 filename
My question is this: is there a mechanism for determining the names of the -v variables within a script?
... (3 Replies)
I have an awk script script.awk for example and want to pass a flag (let's call it "neat") so that the data is put into nice columns. For example like this
awk -v neat -f script.awk fin > fout
Then check inside the program if the use has put neat, if yes I output the lines in nice columns,... (1 Reply)
I have the following code in a csh script
I want to pass the value of the variable sigmasq to the awk script so that I can divide $0 by the value of sigmasq
grep "Rms Value" $f.log \
| awk '{ sub(/*:*\.*/,x); \
print... (2 Replies)
Hello
I have a text file with the next pattern
Name,Year,Grade1,Grade2,Grade3
Name,Year,Grade1,Grade2,Grade3
Name,Year,Grade1,Grade2,Grade3
I want to assign to external variables the grades using the awk method.
After i read the file line by line in order to get the grades i use this
... (2 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)
Currently have this:
set current=192.168.0.5
set servicehost = `echo $current | awk -F. '{print $4}'`
echo $numberoffields
5
..but would like to reduce # of variables and eliminate echo to have something like this:
set servicehost = `awk -v s="$current" -F. 'BEGIN{print $2}'`But... (3 Replies)
Hi Forum.
I have the following test.txt file and need to extract certain rows based on "starting position", "length of string" and "string to search for":
1a2b3d
2a3c4d
.....
My script accepts 3 parameters: (starting col pos, length to search for, string to search for) and would like to... (4 Replies)