global variable in awk


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting global variable in awk
# 1  
Old 03-16-2008
global variable in awk

I wrote a awk script file and define some global variables after BEGIN option:
BEGIN {
cell = "";
alarm = "";}

when i run the command:
awk -f awk_script inputfile
The results are as expected. But when I put awk script into a shell script. Global variables couldn't be understand.

I don't want to use the formatting:
awk -v cell=123 awk_script inputfile . Because the global variables can't be changed many times before finishing awk_script ( with -v option: golbal variables're alway fixed).

Who can solve this for us?
Thanks
# 2  
Old 03-16-2008
awk does not have the concept of immutable global variables.

If you define a variable such as cell in the BEGIN { cell=""; } rule, this variable will be set before any other rules are applied. However if you include a variable assignment on the command line i.e. -v cell=123, then cell is set to 123 before the BEGIN rule is applied. When the BEGIN rule is applied, then cell is (re)set to "".
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Question around Global Variable

Hi, I am using Linux and sh shell count=7 find * -prune -type d | sort -r -n | ( while read d; do if ; then echo "FOUND COUNTER1 is: $count" break 2; fi done echo "FOUND COUNTER2 is: $count" ) if ; then echo "Problem: Multiple or NO records...Please CHECK !!" fi Output: ... (4 Replies)
Discussion started by: mohtashims
4 Replies

2. Shell Programming and Scripting

Global Variable

Hi, I have created a variable say today at the begin having 123 as its value and inside a for loop it gets resolved to some value say 150 in its first iteration. How can I use this value 150 ( 1st iteration's ) outside the scope of for loop ?. In the same way I wanted to use all iteration's... (1 Reply)
Discussion started by: penqueen
1 Replies

3. Shell Programming and Scripting

Global variable value

Hi All, Im new to shell scripting. I am running EgA.sh and setting one global variable XYZ=0 . Also calling another EgB.sh from EgA.sh, changing the value of XYZ=10 but after executing EgB.sh, value of XYZ is still 0. Im expecting it to be 10. Anyone for help. Thanks in Advance. :) (5 Replies)
Discussion started by: paliwal
5 Replies

4. Programming

Structure as global variable

I need to use the below global structure defined in code1.c in another code2.c struct memIOptrs { const char *name; unsigned char *virtptr; }MEM_IO_PTRS; I have a header file for the project codes.h, how should the structure be declared here. Also, what if the structure was... (1 Reply)
Discussion started by: dragonpoint
1 Replies

5. Shell Programming and Scripting

Help with Global Variable

Hi Guyz, I have a requirement like, i have to run a script every hour to count the number of errors encountered. At the end of the day, i need to send them the total number of errors, that have ocurred the entire day. For eg. if 10 errors occurred for starting 1 hr, 5 for next 1 hr, so on.... (1 Reply)
Discussion started by: DTechBuddy
1 Replies

6. Shell Programming and Scripting

Global variable

I have written a shell scritp in which i am using a variable which is declared before a while loop and i am updaitng the variable in while loop and want to use its updated value outside the loop. I am not able to do so, b'coz the scope of the variable is limited to the while loop only and when i am... (5 Replies)
Discussion started by: deepanshu
5 Replies

7. Shell Programming and Scripting

global variable not being set

In ksh I thought a global variable was any variable in a script or function that did not have the typeset command. I have a global in my calling script which I increment in a function, but the value does not change in the calling script. Here is the code: function f_open_log { typeset -r... (5 Replies)
Discussion started by: robotball
5 Replies

8. Shell Programming and Scripting

Global Variable in a script?

How to create a Global variable within a script file. say i want a varaible called LOGFILE to be used within all the script. how to do that? (2 Replies)
Discussion started by: skyineyes
2 Replies

9. Shell Programming and Scripting

Global Variable in awk...

i think..... it's possible use a variable out a awk in the awk ??? ex. A=20071225 awk '{ print "the value is" $a }' OR awk '{ print "........"; c=10; print $c ; c=$A ; print $A}' for a external variable is possbile use in the awk ??? (1 Reply)
Discussion started by: ZINGARO
1 Replies

10. Shell Programming and Scripting

Global variable becomes local

I have encountered a very weird behavior of a global variable in Korn Shell in AIX: A function f1 in my script pipes the output of the function f2 to a program. A variable defined as global using typeset gets its value in f2. That value is not seen in f1. If I remove the pipe ksh recognizes the... (2 Replies)
Discussion started by: odashe318
2 Replies
Login or Register to Ask a Question