हमारी कंपनी लाल टोपी लिनक्स प्रणाली का उपयोग करती है और सभी को / घर में एक खाता आवंटित करती है। दुर्भाग्य से, हमारी प्रणाली tsch का उपयोग कर रही है, जो मेरे लिए अनुकूल नहीं है। इसके अलावा, चूंकि मेरे पास सुपर उपयोगकर्ता की अनुमति नहीं है, इसलिए मैं अपने लिए bash बदलने के लिए chsh कमांड का उपयोग नहीं कर सकता। इससे भी बदतर, मेरे लिए ypchsh भी अनुपलब्ध है। तो, अंत में, मैं निम्नलिखित लाइनों को .cshrc में जोड़ता हूं:
bash
echo $0
और .bashrc को उचित रूप से कॉन्फ़िगर करें (मूल .cshrc से कॉपी करना और आवश्यक सिंटैक्स त्रुटि को ठीक करना)। अब स्पष्ट खोल बैश हो गया (जैसा कि "इको $ 0" कमांड से दिखाया जा सकता है)।
अब समस्या सामने आई:
जब मैं किसी cpp फ़ाइल (जैसे, Hello_World) को संपादित करने के लिए vim का उपयोग करता हूं, और ":! G ++ -g Hello_World.cpp -o hw.out" के लिए फ़ाइल को संकलित करने के लिए, कोई परिणाम नहीं दिखाया जाएगा, और vim को साथ छोड़ दिया जाता है "बैश" दिखाया गया है (जब एक टर्मिनल खुला होता है), लेकिन बिना किसी सामान्य "हिट" के मेरे काम में वापस आने के लिए "एक कुंजी दबाएं"। Hello_World.cpp फ़ोल्डर में, .Hello_World.cpp.swp फ़ाइल है, लेकिन hw.out नहीं है। जब Hello_World.cpp को फिर से vim किया जाता है, तो यह पता चलता है कि यह cpp फाइल खुली हुई है।
हालाँकि, अगर मैं फ़ोल्डर में cpp फ़ाइल को g + + करता हूं, लेकिन vim और: का उपयोग नहीं करता, तो, सब कुछ ठीक है। असल में, :! अब विम के लिए अवैध लगता है।
अगर मैं मूल tcsh का उपयोग करता हूं, तो सब कुछ भी ठीक है।
मैं इस जिज्ञासु त्रुटि को कैसे ठीक कर सकता हूं?
अग्रिम में आपकी मदद के लिए धन्यवाद।
किंग
BTW: मैं मुख्य रूप से HISTIGNORE और HISTCONTROL की अपनी सुविधा के कारण tcsh को पसंद करता हूं, हालांकि tcsh में histdup सेटिंग भी है।
मैंने निम्नलिखित को थोड़ा उपयोगी पाया लेकिन फिर भी अपनी समस्या के लिए संतोषजनक नहीं था।
chsh
अपने लॉगिन शेल को बदलने के लिए उपयोग करें ।