चर

2011-06-16 10 views
6
x=3 
A=`echo $A|awk '{print $x}'` 
echo $A 

does not को प्रिंट 3. साथ उपयोग करना awk कैसे मैं चर awk साथ *चर

उत्तर

10

पास चर awk को -v ध्वज के साथ उपयोग कर सकते हैं।

x=3 
A=`echo $A|awk -v y=$x '{print y}'` 
echo $A 
+0

अच्छा एक लिखने के लिए A=$x :-) लगता है। डबल कोट्स द्वारा उद्धरण को भी बदलना काम करेगा। –

+1

'echo $ ए |' के लिए अच्छा क्या है? यहां कोई '$ ए' नहीं है। – Jens

3

आप इस तरह से खोल के चर का उपयोग कर सकते हैं: "'$your-shell-variable'" या '$your-shell-variable'। पूर्व चर को स्ट्रिंग के रूप में मानता है, जबकि बाद में इसे संख्या के रूप में माना जाता है। निम्नलिखित कोड आप चाहते है:

x=3  
A=`echo $A|awk '{print "'$x'"}'`  
echo $A 
1

उह, $A गूंज की बात क्या है? यह सिर्फ एक बेकार कांटा और पाइप बनाता है।

x=3 
A=`awk -v y=$x 'BEGIN {print y}'` 
echo $A 

और जब मैं इसे पर हूँ, यह एक जटिल और महंगा तरीका की तरह

+0

मुझे बताए बिना डाउनवॉटिंग क्यों? वह सस्ता है... – Jens