निम्नलिखित के साथ:
curl URL | grep -i "KEYWORD" && "keyword found" || echo "keyword not found" >> result.txt
मैं फ़ाइल में परिणाम कैसे प्राप्त कर सकता हूं? ऐसा लगता है कि यह बनाई गई फ़ाइल के साथ या उसके बिना काम नहीं करता है।
उद्देश्य:
कर्ल परिणाम में कीवर्ड की खोज करें, यदि पाया जाता है तो फ़ाइल में संलग्न करें 'मिला' अन्यथा संलग्न करें 'नहीं मिला'।
संपादित करें:
मैं यह समझ गया:
curl URL | grep -i "keyword" && echo "found $(date)" >> result || echo "not found $(date)" >> result
1 उत्तर
आप पूरे if
कमांड के लिए आउटपुट को रीडायरेक्ट कर सकते हैं:
if curl URL | grep -i 'KEYWORD'; then echo "keyword found"; else echo "keyword not found"; fi >> result.txt
यदि यह एक भी कमांड नहीं है, तो आप समूह को {
;}
में संलग्न कर सकते हैं:
{ command1; command2; command3; } >> result.txt
ध्यान दें कि cmd1 && cmd2 || cmd3
अप्रत्याशित परिणाम दे सकते हैं। विशेष रूप से, यदि cmd1
सफल होता है लेकिन cmd2
विफल रहता है, तो cmd3
भी चलेगा। if
/ fi
कम त्रुटि प्रवण है।
संबंधित सवाल
जुड़े हुए प्रश्न
नए सवाल
bash
बैश कमांड शेल के लिए लिखी गई लिपियों के बारे में प्रश्नों के लिए। त्रुटियों / वाक्यविन्यास त्रुटियों के साथ शेल स्क्रिप्ट के लिए, कृपया यहां पोस्ट करने से पहले शेलचेक प्रोग्राम (या वेब शेलचेक सर्वर पर https://shellcheck.net) के साथ उन्हें जांचें। बैश के इंटरैक्टिव उपयोग के बारे में सवाल स्टैक ओवरफ्लो की तुलना में सुपर उपयोगकर्ता पर ऑन-टॉपिक होने की अधिक संभावना है।