मुझे कुछ कमांड्स चलाने की जरूरत है और अगर उनमें से कोई भी विफल रहता है तो मैं JSON को इसके साथ stderr आउटपुट देना चाहूंगा।
मेरी निम्नलिखित पंक्ति है:
OUT="$( (ssh internal "custom_script1" | custom_app1 2>&- | custom_script2) 2>&1)"
यदि पाइप लाइन टूटी हुई है, तो प्रत्येक कमांड अपने stderr पर लिखेगा और OUT में 2 लाइनें होंगी। मैं कैसे जान सकता हूं कि कौन सी कमांड विफलता का कारण बनती है और उस कमांड के स्टेटर को पकड़ती है।
मान लीजिए कि मैं आंतरिक में ssh करने में असमर्थ हूं, इसलिए मैं SSH स्टाडर को ही प्रिंट करना चाहता हूं:
{
"state": "failed",
"reason": "Permission denied (publickey,password,keyboard-interactive)."
}