2012-02-26 17 views
8

बैश में काम नहीं करता:nohup OSX

$nohup sleep 10 & 

लेकिन जब मैं टर्मिनल बंद:

will exit warning

कोई भी विचार? आदर्श रूप में मैं पृष्ठभूमि में Mongodb चलाने के लिए चाहता हूँ।

+0

मेरे लिए यहां काम करता है - अपनी टर्मिनल वरीयताओं की जांच करें? –

उत्तर

5

दिलचस्प। डिफ़ॉल्ट टर्मिनल ऐप के लिए विशिष्ट समस्या की तरह लगता है। क्योंकि इसके लायक होने के कारण, iTerm2 इस व्यवहार को प्रदर्शित नहीं करता है। (ताकि दूसरे शब्दों में, nohup वास्तव में ओएस एक्स पर टूट गया है नहीं है, यह सिर्फ टर्मिनल जो बाहर निकलने पर subprocesses के लिए लग रहा है में विशेष व्यवहार की तरह लगता है।)

कई मायनों में, iTerm2 यह डिफ़ॉल्ट टर्मिनल की तुलना में बेहतर है। आपको इसके लिए प्रयास करना चाहिए!

+0

आप सही हैं, यह एक विचित्र प्रदर्शन त्रुटि है जो मुझे लगता है कि अभी तक ऐप्पल का ध्यान नहीं मिला है। iTerm दिलचस्प है, लिंक के लिए धन्यवाद! –

1

मैंने हिम तेंदुए पर यह कोशिश की, और संवाद आया और शिकायत की कि यह नींद को मारने जा रहा है, लेकिन जब मैंने ps -eaf नींद के माध्यम से चेक किया था तब भी नींद चल रही थी।

bill$ ps -eaf | grep sleep 
    501 11806  1 0 0:00.00 ??   0:00.01 sleep 1000 
    501 11811 2628 0 0:00.00 ttys001 0:00.00 grep sleep 
2

एक screen सत्र में यह चल रहा है ठीक काम करना चाहिए।

1

मैं OSX 10.8.5 पर हूँ, और इस बात की पुष्टि कर सकते हैं:

nohup base64 /dev/urandom &

Terminal.app आधारित एप्लिकेशन (जैसे TotalTerminal), खोल सत्र के तहत प्रक्रिया spawns launchd के तहत नहीं है, जो होगा लिनक्स व्यवहार के लिए अपेक्षित/समकक्ष हो।

दूसरी तरफ, iTerm2.app launchd के तहत एक ही कमांड चलाने में सक्षम था, और खोल सत्र बंद होने के बाद यह जीवित रहता था। यह कुछ विशेष चाल को लागू करता है, हालांकि:

─┬◆ 00001 root /sbin/launchd 
├─┬◆ 00245 albanj01 /sbin/launchd 
│ └─┬◆ 21533 albanj01 /Applications/iTerm.app/Contents/MacOS/iTerm2 -psn_0_94628409 
│ └─┬◆ 04684 albanj01 /Applications/iTerm.app/Contents/MacOS/iTerm2 --server /Applications/iTerm.app/Contents/MacOS/iTerm2 --launch_shell 
│  └─┬◆ 04685 albanj01 -zsh 
│  └──◆ 04759 albanj01 base64 /dev/urandom 

मेरी तरफ मेरे सहयोगी OSX 10.10.x पर एक ही बात की कोशिश की है और Terminal.app launchd तहत nohup प्रक्रिया को जन्म दिया, सुझाव है कि संभवतः वे इसे 10.8 के बीच तय कर दी है। एक्स -1010.एक्स।