ডেবিয়ান - এপ্ট (অ্যাপট-গেট নয়) স্বতঃপূরণ কাজ করছে না


19

আমি ডেবিয়ান জেসি 8.6 এ আছি। আমি লক্ষ্য করেছি যে apt-getপ্যাকেজ এবং কমান্ডের জন্য ট্যাব টিপানোর সময় প্রত্যাশিত বাশ অটোমোપ્লেশন পাওয়া যায়, তবে এটির সাথে aptএটি ব্যবহার করার চেষ্টা করার পরে এটি কার্যকর হয় না। আমার মনে আছে xubuntu 16.04 ব্যবহার করে যেখানে এটি কাজ করেছিল, তাই আমি এটি আশ্চর্যজনক মনে করি যে এটি এখানে কাজ করে না। কমান্ডের জন্য এটি সক্ষম করার কোনও উপায় আছে কি apt? যদি তাই হয়, কিভাবে?


আপনার জন্য কিছু কাজ করেছে?
লিনব

@ লিনব আমি উবুন্টুতে চলে এসেছি, তাই আমি আপনাকে সাহায্য করতে পারি না, দুঃখিত।
Andrea

উত্তর:


19

ডেবিয়ান ইনস্টল ও সক্ষম 'ব্যাশ-সমাপ্তি' নিয়ে আসে না।

এটি ঠিক করতে, চালান (রুট হিসাবে):

apt-get install bash-completion

তারপরে, আপনার কাছে দুটি বিকল্প রয়েছে। আপনি হয় (1) নিজের জন্য এটি প্রতিটি ব্যবহারকারী ভিত্তিতে সক্ষম করতে পারেন, বা (2) এটি বিশ্বব্যাপী সক্ষম করতে পারেন।

  1. আপনি যদি এটি কেবল আপনার ব্যবহারকারীর জন্য সক্ষম করতে চান ~/.bashrcতবে সম্পাদনা করুন - নিম্নলিখিতগুলি যুক্ত করুন:

    if [ -f /etc/bash_completion ]; then
        . /etc/bash_completion
    fi
    

    লগ আউট এবং পিছনে প্রবেশ না করে এটি চেষ্টা করতে, চালনা করুন:

    . ~/.bashrc
    

    অথবা একটি নতুন শেল খুলুন। তারপরে অ্যাপ্লিকেশন সহ ট্যাব-সমাপ্তি ব্যবহার করার চেষ্টা করুন। শুরুতে (at .) বিন্দু এবং স্পেসটি sourceব্যাশ-তে কীওয়ার্ডটি ব্যবহার করার মতো তবে এটি আরও বহনযোগ্য।

    আপনি যদি suরুট অ্যাকাউন্টে প্রবেশ করার সময় এটি কাজ করতে চান তবে রুটের হোম ডিরেক্টরিতে (সাধারণত /root) একই জিনিসটি করুন ।

  2. এটি বিশ্বব্যাপী সক্ষম করতে /etc/bash.bashrcপরিবর্তে ফাইলটিতে (1) থেকে পরিবর্তনগুলি করুন ।

এটি কেন কাজ করে তা নিয়ে যে কেউ ভাবছেন, তার .সামনের জায়গাটি বর্তমান ডিরেক্টরিটিকে নির্দেশ /etc/bash_completionকরে না , কারণ এর চারপাশে স্পেস রয়েছে। এটি পরিবর্তে প্রদত্ত ফাইলের বিষয়বস্তুগুলি বর্তমানে চলমান শেলটিতে একটি নতুন সাবসিলে কার্যকর করার পরিবর্তে মূল্যায়ন করতে সক্ষম করে। এটি এখানে মানসম্মত হয়।

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


2
আমি ইতিমধ্যে এই পদক্ষেপগুলি করেছি, তবে তাতে কোনও লাভ হয়নি। কেবলমাত্র অ্যাপটি-গেটের সাথে কাজ করে, তবে অ্যাপ্লিকেশন কাজ করে না।
Andrea

@ আন্দ্রে ওহ, দুঃখিত, আমি আপনার প্রশ্নটি পুরোপুরি পড়িনি, আমার ধারণা। আমি এই মুহুর্তে আমার ডেবিয়ান বাক্সে নেই (উইন্ডোতে, যা কিছু পেয়েছি তা সাইগউইন, দুর্ভাগ্যক্রমে) তবে আমি ফিরে আসার পরে আমার ডেবিয়ান মেশিন থেকে এটি বের করার চেষ্টা করব।
Wyatt8740

5

ডেবিয়ান 9 স্ট্রেচে কেবল /etc/bash.bashrc এবং অসম্পূর্ণ সম্পাদনা করুন:

# enable bash completion in interactive shells
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

3

এই কনফিগারেশন ফাইলটি উবুন্টু: / ইউএসআর / শেয়ার / বাশ-সমাপ্তি / সম্পূর্ণকরণ / জেসির একই ডিরেক্টরিতে অনুলিপি করুন। আপনি ফাইলটি এখানে পেতে পারেন: http://pastebin.com / PRBMt3an


এটাই আমার দরকার। তবে স্বয়ংক্রিয়ভাবে সম্পূর্ণ হওয়ার জন্য অ্যাপটি কাজ করছে না, আমি অনুলিপি করার পরে, ডাউনলোড করা অ্যাপটি ফাইলটির নাম / ইউএসআর / শেয়ার / বাশ-সমাপ্তি / সম্পূর্ণকরণ / এ নামকরণ করেছি। কীভাবে এটি কাজ করবেন?
ক্লোর 27'19

পেস্টবিন . com/পিআরবিএমটি 3 ফাইলটি উইন্ডোজ সিআর এলএফ লাইনফিডে ছিল, এই কারণেই এটি কার্যকর হয়নি। আমাকে লাইন ফর্ম্যাটটি ইউনিক্স এলএফ লাইনফিডে রূপান্তর করতে হয়েছিল, তাই নতুন টার্মিনাল শুরু করার পরে কাজ করে।
ক্লোর

এখানে সঠিক লাইনফীড সঙ্গে 'কার্যক্ষম' ফাইল filedropper.com/apt_1
klor

1

আমি কীভাবে এটি সমাধান করেছি

আমি স্বয়ংসম্পূর্ণ করতে চেষ্টা স্বয়ংক্রিয় সমাপ্তি সমস্যা wgetসঙ্গে apt-get install wg[TAB][TAB]এবং আমি সরিয়ে তার সমাধানের পরিচালিত --no-generateনিচে মাছি থেকে পরামিতি:

/usr/share/bash-completion/completions/apt-cache
/usr/share/bash-completion/completions/apt-get

এটি উল্লেখযোগ্য যে এই ফাইলগুলি ইনস্টল করার পরেই উপলব্ধ bash-completion

--no-generateআমি যে প্যারামিটারটির উল্লেখ করছি সেগুলি নীচের লাইনে দেখা যাবে, তবে আমি --no-generateকেবল এই লাইনটি থেকে সমস্তই সরিয়েছি : https://github.com/scop/bash-completion/blob/master/completions/apt-get# L28

আমি কিভাবে এই জায়গায় এসেছি?

আমি set -vআগের দৌড়ানোর পরে এই জায়গায় পৌঁছেছি apt-get install wg[TAB][TAB], যা দেখায় যে কমান্ডটি কার্যকর করা হয়েছিল:

apt-cache --no-generate pkgnames wg

এবং আউটপুট একটি ত্রুটি ছিল:

E: Could not open file  - open (2: No such file or directory)

যখন আমি কার্যকর apt-cache pkgnames wgনা করে --no-generateআমি স্বতঃসম্পূর্ণতার জন্য তালিকাটি সঠিকভাবে পেয়েছিলাম:

root@484f5c8f56ba:/# apt-cache pkgnames wg
wgalician-minimos
wget2
wgaelic
wget
wgerman-medical
wget2-dev

আশাকরি এটা সাহায্য করবে.


যে ছিল ঠিক কি আমি প্রয়োজন ছিল। ধন্যবাদ: ডি
সিসিস

0

সমস্যাটি সম্ভবত সম্ভবত দ্বারা সৃষ্ট

Dir::Cache::pkgcache "";
Dir::Cache::srcpkgcache "";

মধ্যে সেটিংস /etc/apt/apt.conf.d। আমার ক্ষেত্রে এটি ডেবিয়ান ডকার চিত্র থেকে উদ্ভূত হয়েছে, https://github.com/debuerreotype/debuerreotype/blob/799473bee3d388cf00bd55221b38a9d58bd6a2ba/scriptts/debuerreotype-minimizing-config দেখুন

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