2010-06-24 11 views
12

मान लीजिए कि मैं एक बड़ा यूनिक्स रूकी हूं, - मैं हर 15 मिनट में क्रॉन के माध्यम से एक कर्ल अनुरोध चला रहा हूं। - कर्ल मूल रूप से एक वेब पेज (php) है कि कुछ तर्क दिया लोड करने के लिए प्रयोग किया जाता है, की तरह एक स्क्रिप्ट के रूप में कार्य करता है:अनुक्रमिक रूप से संसाधित एकाधिक कर्ल अनुरोध कैसे चलाएं?

curl http://mysite.com/?update_=1

मैं प्राप्त करने के लिए चाहते हैं क्या यह कर्ल का उपयोग कर एक और "स्क्रिप्ट" चलाने के लिए है तकनीक, - हर बार अन्य स्क्रिप्ट चलाया जाता है - इससे पहले कि अन्य स्क्रिप्ट

चलाया जाता है मैंने पढ़ा है कि कर्ल एक आदेश में एक से अधिक यूआरएल को स्वीकार करता है, लेकिन मैं अनिश्चित हूँ अगर यह ulrs क्रमिक रूप से या "समानांतर में पर कार्रवाई होगी "।

उत्तर

22

यह सबसे अधिक संभावना प्रक्रिया उन्हें क्रमिक (क्यों बस इसे परीक्षण नहीं) होगा। लेकिन क्या आप भी ऐसा कर सकते हैं:

1) एक फ़ाइल curlrequests.sh 2 कहा जाता है बनाने के) इस प्रकार की तरह एक फ़ाइल में रख:)

curl http://mysite.com/?update_=1 
curl http://mysite.com/?update_=3 
curl http://mysite.com/?update_=234 
curl http://mysite.com/?update_=65 

3 फ़ाइल को सहेजने और यह chmod के साथ निष्पादन योग्य बनाने:

chmod +x curlrequests.sh 

4) अपनी फ़ाइल चलाएं:

./curlrequests.sh 

या

/path/to/file/curlrequests.sh 

एक तरफ ध्यान दें के रूप में, आप & & साथ श्रृंखला अनुरोध कर सकते हैं, इस तरह:

curl http://mysite.com/?update_=1 && curl http://mysite.com/?update_=2 && curl http://mysite.com/?update_=3 

और समानांतर में निष्पादित & का उपयोग कर:

curl http://mysite.com/?update_=1 & curl http://mysite.com/?update_=2 & curl http://mysite.com/?update_=3 
+0

Timoty, श्रृंखलित जाएगा अनुरोध ...... क्रमिक रूप से निष्पादित? – Riccardo

+0

हां, ज्यादातर मामलों में वे करेंगे, लेकिन अगर उनमें से एक को त्रुटि के साथ समाप्त होना चाहिए (0 के अलावा वापसी मूल्य), तो निम्नलिखित निष्पादित नहीं किए जाएंगे। – mbq

+0

जो मेरे लिए सही है। धन्यवाद! – Riccardo

1

वांछित क्रम में दो कर्ल अनुरोध के साथ एक स्क्रिप्ट लिखें और क्रॉन द्वारा इसे चलाने, जैसे

#!/bin/bash 
curl http://mysite.com/?update_=1 
curl http://mysite.com/?the_other_thing 
0

मैं इस अधिक देशी क्षमताओं का उपयोग करता लगता है

//printing the links to a file 
$ echo "https://stackoverflow.com/questions/3110444/ 
https://stackoverflow.com/questions/8445445/ 
https://stackoverflow.com/questions/4875446/" > links_file.txt 


$ xargs curl < links_file.txt 

आनंद लें!

कर्ल http://mysite.com/?update_=1 && http://mysite.com/?update_=2 && कर्ल की तरह
संबंधित मुद्दे