द्वारा awk कमांड को निष्पादित करने के लिए कैसे मेरे पास डेटा का एक सेट है जिसे मैं सौदा करना चाहता हूं। मैं लिनक्स में "awk" कमांड निष्पादित करने के लिए एक पायथन कोड चलाने की कोशिश कर रहा था। होवरवर कोई फर्क नहीं पड़ता कि मैं विभिन्न तर्कों या कार्यों का प्रयास कैसे करता हूं, यह सब काम नहीं करता है।पायथन कोड
दो अलग-अलग तरीके हैं जिनमें मैंने कोशिश की है, लेकिन वे सभी काम नहीं कर पाए। मैं नहीं जानता कि क्यों
1)
#!/usr/bin/env python
import subprocess as sp
cmd = "awk, '{print $2 '\t' $4 '\t' $5 '\t' $6}', B3LYPD.txt"
args = cmd.split(',')
p = sp.Popen(args, stdin = sp.PIPE, stdout = sp.PIPE, stderr = sp.PIPE)
2)
#!/usr/bin/env python
import subprocess as sp
cmd = "awk, '{print $2 '\t' $4 '\t' $5 '\t' $6}'"
args = cmd.split(',')
p = sp.Popen(args, stdin = sp.PIPE, stdout = sp.PIPE, stderr = sp.PIPE)
c = p.communicate('B3LYPD.txt')
print c
'shlex.split'' str.split' का प्रयोग करें। –
यदि आप पहले से ही पाइथन में प्रोग्रामिंग कर रहे हैं, तो क्या आप वाकई 'awk' को कॉल करने की आवश्यकता है? पाइथन शायद आपको 'अजीब' से ठीक कुछ भी कर सकता है। –
यदि आपको 'c = "का उपयोग करने के बजाय तारों की एक सूची की आवश्यकता है, तो, अन्य"; args = cmd.split (',') ', आप केवल' args = ["this", "that", "other"] 'का उपयोग कर सकते हैं और विभाजन कमांड को छोड़ सकते हैं। –