2011-02-19 18 views
12

मैं कभी भी जीयूआई के साथ काम नहीं करता हूं और हमेशा टर्मिनल (पूर्ण स्क्रीन, इसलिए कोई शीर्षक पट्टी) के अंदर नहीं रहता -nodesktop -nodisplay विकल्प के साथ सेट करता है। मेरे पास अलग-अलग सर्वर भी हैं जो मैटलैब चलाने के लिए कनेक्ट होते हैं और उनमें से प्रत्येक के पास कंप्यूटेशनल संसाधनों को घुमाने पर अलग-अलग प्रतिबंध होते हैं। चूंकि यह याद रखना मुश्किल है कि मैं कौन सा सर्वर हूं, खासकर अगर मेरे पास कई सत्र खुले हैं, तो मैं सोच रहा था कि क्या मैं सर्वर नाम प्रदर्शित करने के लिए प्रॉम्प्ट बदल सकता हूं। जैसा कि मैं कर सकता हूं, कोशिश करें, मुझे कोई संसाधन नहीं मिला जो बताता है कि इसके बारे में कैसे जाना है (मुझे लगता है कि गणित इसका समर्थन नहीं करता है)। मुझे पता है, एक कामकाज केवल system('hostname') पर फ़ंक्शन कॉल लिखना होगा और फ़ंक्शन को पथ में डालना होगा, ताकि यह निर्देशिका खोजने के लिए pwd टाइप करने जितना आसान हो। मैं जानना चाहता हूं कि क्या कुछ और सुरुचिपूर्ण है।क्या मैं MATLAB में प्रॉम्प्ट बदल सकता हूं?

+0

@ user564376: आईडीई का उपयोग न करने का क्या कारण है? – zellus

+0

मैं एसएसएच द्वारा सर्वर से कनेक्ट करता हूं और वहां अपना काम करता हूं। एक्स 11 होग संसाधनों के माध्यम से सभी गुई स्ट्रीमिंग (उल्लेख नहीं है, जेवीएम), भले ही मेरे पास बहुत अच्छा कनेक्शन है। टर्मिनल से काम करना और 'आंकड़े' के साथ सभी आंकड़ों को प्रिंट करना बहुत तेज़ है, इसे वापस अपने लैपटॉप पर दबाएं और उन्हें स्थानीय रूप से देखें। –

उत्तर

12

MathWorks File Exchange पर एक सबमिशन है जो आपके लिए यह कर सकता है: setPromptYair Altman द्वारा। R2010b में इसका इस्तेमाल करते हुए, मैंने देखा कि मैं चेतावनी संदेश हो रही थी:

Warning: Possible deprecated use of set on a Java callback. 
> In setPrompt at 115 

कौन सा मैं बहुत तरह warning समारोह का उपयोग कर दबाने में सक्षम था:

warning('off','MATLAB:hg:JavaSetHGProperty'); 

और यहाँ है कि कैसे मैं करने के लिए शीघ्र बदला मेजबान system समारोह का उपयोग कर नाम:

>> [~,systemString] = system('hostname'); 
>> setPrompt([deblank(systemString) '>> ']); 
P11-4504>> 

समारोह deblank (पिछली श्वेत रिक्ति को दूर करने के लिए इस मामले में प्रयोग किया जाता है एक नई लाइन) स्ट्रिंग से।

नोट: ऊपर परिवर्तन (दबा चेतावनी और संशोधित शीघ्र) ताकि आप अपने startup.m file में उपरोक्त कोड डाल सकता है उन्हें स्वचालित रूप से हर बार लागू करने के लिए आप एक नया सत्र शुरू होने के बाद आप छोड़कर पुन: प्रारंभ MATLAB जारी रहती है नहीं करते हैं, ।

+1

यह उत्तर नए संस्करणों (MATLAB 2018a) पर अच्छा प्रतीत नहीं होता है, तो Altman कोड अब प्रतिक्रिया के बारे में चेतावनी जारी करता है। क्या कोई नया तरीका है? –

+1

@AlecJacobson: मैं इस तरह के संकेत देने वाले 'setPrompt' के लिए सबमिशन पेज पर एक टिप्पणी छोड़ दूंगा। – gnovice

+0

हालांकि मैं पूरी तरह समझता हूं कि आपने प्रारंभ में [इस सवाल] को चिह्नित क्यों किया है (https://stackoverflow.com/questions/48646435/) डुप्लिकेट @gnovice के रूप में, मुझे लगता है कि यह एक डुप्लिकेट टैग हटाने के वारंट के लिए पर्याप्त रूप से अलग हो सकता है। मैंने प्रश्नों के बीच मतभेदों का एक संक्षिप्त विवरण जोड़ा, और मैंने इस प्रश्न से भी जुड़ा हुआ है - ताकि जिन उपयोगकर्ताओं को इसकी आवश्यकता हो, उन्हें पुनर्निर्देशित किया जा सके। आपको स्पष्ट रूप से यहां अधिक अनुभव है, इसलिए मैं इसे अपने हाथों में छोड़ दूंगा, और मैं आपके निर्णय का किसी भी तरह से सम्मान करूंगा। – Lucubrator

संबंधित मुद्दे