पाठ फ़ाइल से परम के साथ एक स्क्रिप्ट निष्पादन कैसे लूप करें


0

मुझे चलाने की जरूरत है। एक टेक्स्ट फ़ाइल में प्रत्येक कीवर्ड के लिए एक बार स्क्रिप्ट स्क्रिप्ट। एक गनोम टर्मिनल से मैं यह कैसे कर सकता हूं? (अजगर स्क्रिप्ट को संशोधित किए बिना)

छद्म कोड:

for each keyword in file:
  ./pythonScript keyword
  waitfor(pythonScript to finish)

जवाबों:


1

मान लें कि प्रति पंक्ति एक कीवर्ड है, यहां एक शुद्ध शेल, पोर्टेबल समाधान है:

while read -r line; do
    ./pythonScript "$line"
done <file

यहाँ थोड़ा सरल लिनक्स समाधान है:

<file xargs -d '\n' -n 1 ./pythonScript

दोनों समाधान किसी भी वर्णमाला के अलावा किसी भी वर्ण को एक कीवर्ड में प्रदर्शित करने की अनुमति देते हैं।


0

क्या फ़ाइल से प्रति पंक्ति एक कीवर्ड है? यदि ऐसा है तो,

while read keyword
do
    ./pythonScript $keyword
done < file

हाँ खोजशब्द प्रति पंक्ति एक हैं (लेकिन कुछ "एक ही पंक्ति में" कीव 1 और कीव 2 "जैसे वाक्यांश हैं) क्या यह अभी भी काम करेगा?
ldabl

0

यदि आपके पास GNU समानांतर http: // www.gnu.org/software/parallel/ स्थापित है, तो आप ऐसा कर सकते हैं:

cat file | parallel ./pythonScript

यदि आप मल्टीकोर मशीन पर चलते हैं तो यह समानांतर रूप से नौकरियों को चलाएगा।

अधिक जानने के लिए GNU समानांतर के इंट्रो वीडियो देखें: http://www.youtube.com/watch?v=OpaiGYxkSuQ

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.