लिनक्स के लिए विंडोज सबसिस्टम में .bashrc से 'इनपुट / आउटपुट त्रुटि' को ठीक करना


5

मैंने .bashrcअपने WSL (लिनक्स के लिए विंडोज सबसिस्टम) बैश के लिए गलती से फाइल को एडिट कर दिया था, एक विंडोज टेक्स्ट एडिटर (नोटपैड ++) का उपयोग करके।

अब जब भी मैं बैश चलाता हूं तो मुझे निम्नलिखित त्रुटि मिलती है:

bash: /root/.bashrc: इनपुट / आउटपुट त्रुटि

मैं इसे कैसे ठीक करूं? मैंने लिनक्स फाइल एंडिंग (केवल LF) के साथ बचत करने की कोशिश की, लेकिन यह काम नहीं किया।


मैं उत्सुक हूं कि आपने इसे वास्तव में कैसे तोड़ा, क्योंकि मैं दोहराव नहीं लगा सकता (इसके बावजूद यह एक बुरा विचार है)। साथ ही, विंडोज का कौन सा संस्करण चल रहा है? 1703? 1709? पुराने? इसे ठीक करने और फ़ाइल सामग्री (सामान्य तरीके से) को संरक्षित करने के लिए मेरा सामान्य विचार यह था कि इसे विंडोज की तरफ, बेस 64 पर पढ़ा जाए और इसे डब्ल्यूएसएल पक्ष पर वापस लिखा जाए। जब तक मैं इस मुद्दे को पुन: पेश नहीं कर सकता हूं, तब तक ...
बॉब

मैंने नोटपैड ++ में इसे खोला, अंत में 3 पंक्तियों पर टिप्पणी की और इसे बचाया। यह उसे भ्रष्ट करने के लिए पर्याप्त था। EOL या एन्कोडिंग में कोई जानबूझकर परिवर्तन नहीं किया।
7

जवाबों:


4

मैं इसे कैसे ठीक करूं? मैंने लिनक्स फाइल एंडिंग (केवल LF) के साथ बचत करने की कोशिश की, लेकिन यह काम नहीं किया।

समाधान के एक जोड़े हैं:

इन फ़ाइलों (vim, emacs, नैनो, आदि ...) को संशोधित करने के लिए लिनक्स / उबंटू ऐप का उपयोग करें।

एक व्यक्ति ने कहा nanoकि फ़ाइल को फिर से सहेजना और सहेजना इस मुद्दे को ठीक करता है।

यदि वह काम नहीं करता है तो आप फिर से स्थापित करने के परमाणु विकल्प की कोशिश कर सकते हैं:

मेरे मामले में, कुछ भी तय नहीं हुआ। मैंने BashOnWindows को हटाने के लिए निम्नलिखित आदेश का उपयोग किया और फिर इसे पुनः स्थापित किया:

lxrun /uninstall /full

lxrun /install /y

स्रोत बैश कमांड मेरे लिए काम नहीं करता है एडिट करने के बाद .bashrc ST3 का उपयोग करके


आगे की पढाई

  • WSL फ़ाइल सिस्टम समर्थन
  • यहाँ एक अच्छी व्हाइटबोर्ड-चर्चा है कि कैसे WSL / LXSS काम करता है और फ़ाइलों को संपादित / कॉपी करना और उन्हें VolFS माउंट में स्थानांतरित करना हमेशा काम नहीं करेगा। वीडियो में विशेष रूप से 15:15 देखें

मैं लगभग आपके उत्तर के साथ पार कर गया, फिर भी! @ urig का स्वयं का उत्तर आपके निदान की पुष्टि करता है।
AFH

धन्यवाद @DavidPostill लेकिन आपके पहले सुझाव काम नहीं आए क्योंकि WSL खराब .bashrcफ़ाइल को पहचान नहीं पा रहा था । आखिरी सुझाव काफी आक्रामक है कि यह पूरी तरह से डब्ल्यूएसएल को बहाल करता है। सौभाग्य से मैं एक सरल, तेज ऑपरेशन का उपयोग करके हल करने में कामयाब रहा - मेरे सवाल का अपना जवाब देखें।
17

1
@ हमारे महान! अच्छा काम आप हालांकि फ़ाइल व्यक्तिगत नहीं था ...
DavidPostill

FYI lxrunको 1709 के रूप में दर्शाया गया wslconfigहै। नया CLI उपकरण है, जबकि स्टोर डिस्ट्रोस को स्थापित / अनइंस्टॉल करने के लिए सही जगह है। देखें: blogs.msdn.microsoft.com/commandline/2017/10/11/…
Bob

3

मुझे अपनी समस्या का न्यूनतम समाधान मिल गया है। मेरा WSL ​​Ubuntu चला रहा है। उबंटू में .bashrcअंडर की एक प्राचीन प्रति है /etc/skel

  1. मैंने .bashrcविंडोज एक्सप्लोरर का उपयोग करने की अपनी खराब प्रतिलिपि को हटा दिया ।
  2. बैश में मैंने प्राचीन प्रति की तरह नकल की: cp /etc/skel/.bashrc ~/

(इस AskUbuntu उत्तर के आधार पर: https://askubuntu.com/questions/198730/how-to-restore-bashrc-file )


नोट: फ़ाइल हटाए जाने से पहले सभी मौजूदा बैश शेल को बंद कर दिया जाना चाहिए github.com/Microsoft/WSL/issues/904#issuecomment-293819387
Aralox
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.