এটি bash-complete
প্যাকেজের একটি বাদ , নয় apt
। এটি এখনও মনে হয় একটি সমাপ্তি এখনও বিদ্যমান নেই, সুতরাং আমি apt
কমান্ডের জন্য যা করতে পারি তা একসাথে স্ক্র্যাপ করে ফেলেছি (এটি এখনকার সেরা নথিভুক্ত কমান্ড নয়!)
নীচে বিদ্যমান apt-get
সমাপ্তি থেকে একটি রূপান্তরকরণ রয়েছে (উপাদানগুলি ছাঁটাই হয়ে গেছে এবং বিটগুলি apt-cache
সমাপ্ত হতে যোগ করা হয়েছে )। sudoedit /usr/share/bash-completion/completions/apt
নিম্নলিখিতটিতে চালান এবং আটকান:
# Debian apt(8) completion -*- shell-script -*-
_apt()
{
local cur prev words cword
_init_completion || return
local special i
for (( i=0; i < ${#words[@]}-1; i++ )); do
if [[ ${words[i]} == @(list|search|show|update|install|remove|upgrade|full-upgrade|edit-sources|dist-upgrade|purge) ]]; then
special=${words[i]}
fi
done
if [[ -n $special ]]; then
case $special in
remove|purge)
if [[ -f /etc/debian_version ]]; then
# Debian system
COMPREPLY=( $( \
_xfunc dpkg _comp_dpkg_installed_packages $cur ) )
else
# assume RPM based
_xfunc rpm _rpm_installed_packages
fi
return 0
;;
*)
COMPREPLY=( $( apt-cache --no-generate pkgnames "$cur" \
2> /dev/null ) )
return 0
;;
esac
fi
case $prev in
-c|--config-file)
_filedir
return 0
;;
-t|--target-release|--default-release)
COMPREPLY=( $( apt-cache policy | \
command grep "release.o=Debian,a=$cur" | \
sed -e "s/.*a=\(\w*\).*/\1/" | uniq 2> /dev/null) )
return 0
;;
esac
if [[ "$cur" == -* ]]; then
COMPREPLY=( $( compgen -W '-d -f -h -v -m -q -s -y -u -t -b -c -o
--download-only --fix-broken --help --version --ignore-missing
--fix-missing --no-download --quiet --simulate --just-print
--dry-run --recon --no-act --yes --assume-yes --show-upgraded
--only-source --compile --build --ignore-hold --target-release
--no-upgrade --force-yes --print-uris --purge --reinstall
--list-cleanup --default-release --trivial-only --no-remove
--diff-only --no-install-recommends --tar-only --config-file
--option --auto-remove' -- "$cur" ) )
else
COMPREPLY=( $( compgen -W 'list search show update install
remove upgrade full-upgrade edit-sources dist-upgrade
purge' -- "$cur" ) )
fi
return 0
} &&
complete -F _apt apt
# ex: ts=4 sw=4 et filetype=sh
তারপরে source ~/.bashrc
সম্পূর্ণতা লোড করতে চালান । তারপরে apt show firef
+ Tabসম্পূর্ণ করা উচিত।
এটি আপনাকে এমন বিকল্পগুলি দিতে পারে যা কেবলমাত্র আর অস্তিত্ব নেই। আমি প্রধান কমান্ড (সময় পরিবর্তন হতে পারে) পেরেক দিয়ে থাকেন কিন্তু খুব অন্তত এটা সাধারণ কমান্ড দিয়ে সাহায্য করব: list
search
show
update
install
remove
upgrade
full-upgrade
edit-sources
dist-upgrade
purge
।
স্পষ্টতই, যদি কোনও ব্যাশ-সমাপ্তি রক্ষণাবেক্ষণকারী উপরের বিষয়টিকে ধরতে চান, আপনি জিপিএল এর আওতায় এটি স্বাগত জানাই (যদিও apt
ডকুমেন্টিং হয়ে যাওয়ার পরে আমাকে তাজা থেকে প্রলুব্ধ করতে হবে !)