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
Post a Comment