Assign o/p of awk to a variable


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Assign o/p of awk to a variable
# 8  
Old 02-01-2007
Quote:
1. I thought only single slash is required for escaping, then whats the meaning of double slash.
Code:
YYYN939@CANPC-003249 ~
$ x=`awk "{ print \$0 }" f`
x=`awk "{ print \$0 }" f`
awk "{ print $0 }" f
++ awk '{ print bash }' f
+ x=

YYYN939@CANPC-003249 ~
$ x=`awk "{ print \\$0 }" f`
x=`awk "{ print \\$0 }" f`
awk "{ print \$0 }" f
++ awk '{ print $0 }' f
+ x='Hi
How are you'

YYYN939@CANPC-003249 ~
$ x=$(awk "{ print \$0 }" f)
x=$(awk "{ print \$0 }" f)
awk "{ print \$0 }" f
++ awk '{ print $0 }' f
+ x='Hi
How are you'

Quote:
2. Also why doesnt the following one work:
myvariable=`awk '/^.{232}$acctNum/ { printf("%s;Y;Account",substr($0,241,1)) ; exit} ' myinputfile.txt`
In this case we dont even need escaping.
This wont work because variable substitution wont occur inside single quotes. So this variable $acctNum wont expand.
You can use try this
Code:
awk -v no var=$acctNum ' $0 ~ "^.{232}"var { ... } ' file

or
Code:
awk '/^.{232}'"$acctNum"'/ { ... } ' file

# 9  
Old 04-01-2009
awk command result to variable

I have a similar problem by assigning a value of a command to a variable. In this case, with:
Get list of Network interfaces: /usr/sbin/networksetup -listnetworkserviceorder
Get specifically the one that contains the word "Ethernet": awk -F'\\) ' '/\Ethernet/ {print $2}'`

Assign the whole string to a variable called: "networkInterface": networkInterface= "`/usr/sbin/networksetup -listnetworkserviceorder | awk -F'\\) ' '/\Ethernet/ {print $2}'`"

Any ideas? I'm really stuck in here.Smilie

Last edited by Franklin52; 04-01-2009 at 08:56 AM.. Reason: Replace wrong color tags
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to assign awk values to shell variable?

Hi Gurus, I have a script which assign awk output to shell variable. current it uses two awk command to assign value to two variables. I want to use one command to assign two values to two variables. I tried the code, but it does't work. kindly provide your suggestion. current code... (2 Replies)
Discussion started by: green_k
2 Replies

2. UNIX for Beginners Questions & Answers

How to assign a value to a variable in awk scripting?

Hi, I am trying to assign a value using below command and it is assigning the command to the variable not the output of the command? out_value="echo $0 | cut -c 9-11"; How can i assign the output to the variable instead of whole command? This is inside my awk script (7 Replies)
Discussion started by: bhagya123
7 Replies

3. UNIX for Beginners Questions & Answers

How can I assign awk's variable to shell script's variable?

I have the following script, and I want to assign the output ($10 and $5) from awk to N and L: grdinfo data.grd | awk '{print $10,$5}'| read N L output from gridinfo data.grd is: data.grd 50 100 41 82 -2796 6944 0.016 0.016 3001 2461. where N and L is suppose to be 3001 and 100. I use... (8 Replies)
Discussion started by: geomarine
8 Replies

4. Shell Programming and Scripting

Assign a variable with awk

I launch 'netstat -a', if string 'ESTABLISHED' found, then VAR=1 #!/bin/bash VAR=0; netstat -a | awk '$6 ~ /ESTABLISHED/ {VAR=1}' I cannot find the right syntax. thanx guys! (3 Replies)
Discussion started by: arpagon
3 Replies

5. Shell Programming and Scripting

help on awk---- need to assign the output of awk to a variable

hi i want to find the size of a folder and assign it to a variable and then compare if it is greater than 1 gb. i am doin this script, but it is throwing error.... #!/bin/ksh cd . | du -s | size = awk '{print $1}' if size >= 112000 then echo size high fi ERROR : (4 Replies)
Discussion started by: Nithz
4 Replies

6. Shell Programming and Scripting

assign awk's variable to shell script's variable?

Dear All, we have a command output which looks like : Total 200 queues in 30000 Kbytes and we're going to get "200" and "30000" for further process. currently, i'm using : numA=echo $OUTPUT | awk '{print $2}' numB=echo $OUTPUT | awk '{print $5}' my question is : can I use just one... (4 Replies)
Discussion started by: tiger2000
4 Replies

7. Shell Programming and Scripting

awk: assign variable with -v didn't work in awk filter

I want to filter 2nd column = 2 using awk $ cat t 1 2 2 4 $ VAR=2 #variable worked in print $ cat t | awk -v ID=$VAR ' { print ID}' 2 2 # but variable didn't work in awk filter $ cat t | awk -v ID=$VAR '$2~/ID/ { print $0}' (2 Replies)
Discussion started by: honglus
2 Replies

8. Shell Programming and Scripting

assign awk command result to a variable

#!/bin/sh # ## MYSTRING = `awk '/myApp.app/' /Users/$USER/Library/Preferences/loginwindow.plist` if then echo String not found defaults write /Users/$USER/Library/Preferences/loginwindow AutoLaunchedApplicationDictionary -dict-add -string Hide -bool YES -string Path -string... (9 Replies)
Discussion started by: dedmakar
9 Replies

9. Shell Programming and Scripting

assign value to variable using AWK

Dear Friends I have text file as like below, AAAAA|BHBHBH|VERYSMART AAAAA| KKKKKK|GOOD BBBBBB|JJJJJJJ|VERYGOOD CCCCC|HJHJHJ|BETTER CCCCC|UUUUU|GOOD i need to split into seperate files based on column 1 like as below AAAAA.TXT contains -------------------- BHBHBH.VERYSMART... (4 Replies)
Discussion started by: HAA
4 Replies

10. Shell Programming and Scripting

awk: assign a printf value to a variable

Is there any way to something like this?: variable=printf("%30s",var1) Thx. (2 Replies)
Discussion started by: Klashxx
2 Replies
Login or Register to Ask a Question