मेरा प्रश्न इस के समान है , लेकिन मैं कुछ अलग सा देख रहा हूँ। मेरे पास एक नोटबुक पीसी है जो मैं दो अलग-अलग परिदृश्यों में नेटवर्क पर लिनक्स मशीनों का उपयोग करने के लिए उपयोग करता हूं:
मेरे पास नेटवर्क से सीधा, वायर्ड कनेक्शन है।
मेरा नेटवर्क से अप्रत्यक्ष संबंध है। इंटरनेट के संपर्क में आने वाले नेटवर्क पर एक गेटवे मशीन है, जिसका उपयोग मैं नेटवर्क पर मेजबानों को SSH सुरंगों को स्थापित करने के लिए कर सकता हूं। यह स्पष्ट रूप से एक बहुत धीमी, उच्च-विलंबता कनेक्शन है।
मेरे घर की निर्देशिका सभी मशीनों से नेटवर्क-सुलभ है, इसलिए वे मेरी एक प्रति साझा करते हैं .bashrc
। मैं यह .bashrc
पता लगाने के लिए कार्यक्षमता जोड़ना चाहूंगा कि मैं किन दो परिदृश्यों का पता लगा सकता हूं और तदनुसार कार्य कर सकता हूं (तकनीकी रूप से, तीन परिदृश्य होंगे, जहां तीसरा यह है कि मैं अपने स्थानीय मशीन में प्रवेश कर रहा हूं, लेकिन इसे आसानी से नियंत्रित किया जाना चाहिए। )। मैं चीजों को करना पसंद करूंगा:
alias ssh ssh -X
जब मैं स्थानीय नेटवर्क पर हूं, लेकिन मैं इंटरनेट पर X अग्रेषण का उपयोग नहीं करना चाहता।export EDITOR=gvim
जब मैं स्थानीय नेटवर्क परexport EDITOR=vim
होता हूं , लेकिन जब मैं दूरस्थ होता हूं।
और इसी तरह। पिछले उत्तर के आधार पर, ऐसा लगता है कि मुझे SSH_CLIENT
(अगर यह मौजूद है) की सामग्री की जांच करके ऐसा कुछ हासिल करने में सक्षम होना चाहिए और यह देखना कि क्लाइंट आईपी पता मेरे स्थानीय मशीन पर नेटवर्क एडेप्टर में से एक से मेल खाता है या नहीं। मुझे लगा कि मैं यह देखूंगा कि क्या इसे पूरा करने के लिए कोई स्लीकर या अधिक मजबूत तरीका है।