मैंने बैश के एक स्निपेट को दूरस्थ रूप से निष्पादित ssh कमांड की पृष्ठभूमि के लिए कॉपी किया:
ssh user@remote <<CMD
some process <&- >log 2>error &
CMD
क्या करता <&-है?
मेरा अनुमान है कि यह वैसा ही है< /dev/null
मेरा अगला समझ है कि तीन मुख्य फ़ाइल वर्णनकर्ता (है stdin, stdout, stderr) को रोकने के लिए बंद कर दिया जाना चाहिए:
- नौकरी छिपी हुई है और पटकथा से बाहर निकलना - किसी भी तरह से संघर्ष करना?
- जब टर्मिनल बंद हो जाता है, तो टर्मिनल से स्टड को स्वीकार करने वाली सभी प्रक्रियाएं बंद हो जाती हैं?
ssh -nNT user@remote 'command'तो एक गैर-संवादात्मक एसएसएच सत्र बनाएगा। संलग्न &यह पृष्ठभूमि, आगे जोड़ते करने nohupके लिए commandकरता है, तो आपके कनेक्शन मरता चल इसे रखने के लिए।
man sshसुझाव है कि -N पूरी तरह से रिमोट कमांड चलाने में अक्षम है, और एक त्वरित परीक्षण इसका समर्थन करता है।