উইন্ডোজের জন্য লিনাক্স সসবিসিস্টেমের ডিফল্ট শেল কীভাবে পরিবর্তন করবেন


10

আমি উইন্ডোজ ১০ এর জন্য লিনাক্স সাবসিস্টেম ইনস্টল করেছি এটি কার্যকরভাবে কাজ করে তবে আমি সাবসিস্টেমের জন্য ডিফল্ট শেল পরিবেশ পরিবর্তন করতে চাই।

আমি sudo apt-get install fishএবং তারপর chsh -s /usr/bin/fish। তবে আমি যখন bash.exeউইন্ডোজে শুরু করি , এটি সর্বদা বাশ শুরু করে (আমি মনে করি এটি অনুমানযোগ্য)।

এই আচরণ পরিবর্তন করার জন্য কি কেউ যুক্তি জানে?


আপনি যখন শুরু bash.exeআপনি সম্ভবত হয় স্পষ্টভাবে ব্যাশ শুরু। আমি উইন্ডোজ 10-এ লিনাক্স সাবসিস্টেমের সাথে পরিচিত নই, তবে আমি প্রত্যাশা করব যে কোনও নির্দিষ্ট শেলটি স্পষ্টভাবে শুরু না করেই "লিনাক্স" শেলটি শুরু করার কোনও উপায় থাকবে।
একটি সিভিএন

আপনি কি আপনার বাশার্ক বা বাশপ্রোফাইলে একটি কুৎসিত সংস্করণটি মাছের সাথে ইন্টারেক্টিভ বাশ কলগুলি পুনরায় চালু করতে চেষ্টা করেছেন? isatty && exec fishআপনি যখন প্রকৃত সমাধানের বাইরে চলে আসেন তখন এর মতো একটি লাইন যুক্ত করা চেষ্টা করা উচিত।
এ। লুইসউ

উত্তর:


6

লিনাক্স সাবসিস্টেমটি সিস্টেম ডিরেক্টরিতে থাকা bash.exe এর মাধ্যমে শুরু হওয়ার কারণে আপনি প্রতি সেফ ডিফল্ট শেল পরিবর্তন করতে পারবেন না।

তবে আপনি ইতিমধ্যে ব্যাশের জন্য বিদ্যমান শর্টকাটের মতো একটি নতুন শর্টকাট তৈরি করতে পারেন এবং এটি কমান্ডটি চালাতে পারেন

%systemroot%\system32\bash -c /usr/bin/fish

আপনি অবিলম্বে এই মাছ চালানো হবে।


1
আমি %systemroot%\system32\bash.exe ~ -c /bin/zshআমার হোম ডিরেক্টরিতে জেডএসএইচ উন্মুক্ত করতাম।
ডেভিড পারসন

বিকল্পভাবে, %userprofile%আপনার হোম ডিরেক্টরিতে শেলটি শুরু করতে শর্টকাটে "স্টার্ট ইন" ফিল্ডটি সেট করুন ।
ডিওএক্সএক্সএক্স

@ Konqui এটি অন্য কোনও শেল ভাঙবে না। এটি শুরু করার জন্য এটি একটি নতুন শর্টকাট। আপনার বাশ ঠিক কাজ করবে
সামি কুহমনেন

@ সামিকুহমনেন একটি নতুন শর্টকাট সম্পর্কে কিছুই বলেনি - আমি এখন এটিকে সংশোধন করেছি আমি এই উত্তর দিয়ে বাঁচতে পারি।
কনকিউ

9

যেহেতু পতন স্রষ্টাগণ আপডেট আপনি ব্যবহার করতে পারেন chshডিফল্ট শেল সেটিং করতে। আপনি যদি bash.exeকমান্ড ব্যবহার করে ডাব্লুএসএল চালাচ্ছেন তবে এটি এখনও কাজ করে না তবে আপনি যদি কমান্ড সহ ডাব্লুএসএল চালাচ্ছেন তবে এই কাজ করে ubuntu.exe

এছাড়াও, ফলস ক্রিয়েটার্স আপডেট হওয়ার পরে আমাদের উইন্ডোজ স্টোর থেকে ডাব্লুএসএল ওএস ইনস্টল করা উচিত ।

zshডিফল্ট শেল হিসাবে সেট করুন :

chsh -s /bin/zsh

তারপরে ubuntu.exeকমান্ড প্রম্পট থেকে চালান (বা পুনরায় চালু করুন) ।


5

ব্যাশ খুলুন, nano ~/.bashrcএটিকে চালান এবং এতে আটকান:

if [[ -t 1 && -x /usr/bin/zsh ]]; then
    exec /usr/bin/zsh
fi

শেলটি fishবা যা যা চান কেবল তেমন পরিবর্তন করুন । -xআপনি যদি কখনও পুনরায় ইনস্টল ব্যাশ চেক গুরুত্বপূর্ণ - আপনি পরে একটি তাজা ইনস্টল করা হয়েছে কারণ এটি খুলতে সক্ষম হবেন না execকমান্ড ব্যর্থ হবে এবং তারপর ব্যাশ মাত্র বন্ধ করে।

যদি তা ঘটে থাকে তবে আপনার .bashrcফাইলটি এখানে মুছুন / নতুন নাম দিন :

C:\Users\<USERNAME>\AppData\Local\lxss\home\<USERNAME>\.bashrc

-tআমি বিশ্বাস করি চেক যদি stdout- এ খোলা আছে। কেন গুরুত্বপূর্ণ তা নিশ্চিত নই, আমি এটি এই নিবন্ধ থেকে অনুলিপি করেছি ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.