linux - If does not work in bash -


स्क्रिप्ट:

  #! / Bin / bash FILES = / home / admin / $ FI में एफ के लिए परीक्षण / अस्थायी / * ईको "पर कार्य करना: $ F" क्वेरी = $ (बिल्ली $ f) / usr / bin / mysql -h $ 1 -यू व्यवस्थापक -पाइपपासवार्ड -e "$ query" echo "$ ? " अगर [$? -ई 0 0]; फिर एको "सफलतापूर्वक अपलोड किया गया है। फ़ाइल $ F हटा रहा है" rm $ f else "ब्रेकिंग ..." ब्रेक फ़िक्स  

आउटपुट:

कार्य करना पर: /home/admin/test/temp/temp_2014-08-01_02-40.txt त्रुटि 2003 (HY000): '192.168.1.103' (110) 1 पर MySQL सर्वर से कनेक्ट नहीं किया जा सकता 1 सफलतापूर्वक अपलोड किया गया। फाइल को हटाया जा रहा है / होम्स / admin / test / temp/temp_2014-08-01_02-40.txt

$ के अनुसार? मूल्य जो 1 है, यह लूप को तोड़ना चाहिए, लेकिन यह नहीं है।

क्या कोई मुझे बता सकता है कि इसके साथ समस्या क्या है?

आप $? परीक्षण कर रहे हैं पिछली पंक्ति पर गूंज कमांड की स्थिति है।

यदि आप इसे एको करना चाहते हैं और फिर इसे जांचते हैं, तो इसे एक चर में सहेजें:

  / usr / bin / mysql ... status = $? "$ Status" को प्रतिध्वनित करें अगर [$ status -q0]; तब ... fi  

Comments

Popular posts from this blog

sqlite3 - UPDATE a table from the SELECT of another one -

c# - Showing a SelectedItem's Property -

javascript - Render HTML after each iteration in loop -