2021-05-12 14:32:11
fastboot命令的自動補全
在Ubuntu 13.10以及之後的Ubuntu 14.04上,通過APT安裝fastboot以及adb工具之後,發現fastboot的自動補全有問題了, fastboot flash 之後的自動補全有問題了, 特別是mbn以及bin型別的檔案根本無法補全。
查了一下,發現是fastboot的自動補全指令碼限制了補全規則,稍微修改一下就能解決這個問題.
檔案路徑: /etc/bash_completion.d/fastboot
修改其中的內容如下:
_fastboot()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
opts="reboot boot flash devices -w reboot-bootloader"
case "$prev" in
reboot | devices | -w | reboot-bootloader)
COMPREPLY=()
return 0
;;
flash)
COMPREPLY=( $(compgen -W "boot system recovery radio rpm sbl1 modem tz persist splash aboot" -- $cur ))
return 0
;;
boot)
COMPREPLY=( $(compgen -o filenames -G "${cur}*.img"))
return 0
;;
*)
local prev2="${COMP_WORDS[COMP_CWORD-2]}"
local prev3="${COMP_WORDS[COMP_CWORD-3]}"
if [ "$prev2" == "flash" ];then
COMPREPLY=( $(compgen -o filenames -G "${cur}*"))
return 0
elif [ "$prev2" == "boot" ];then
COMPREPLY=()
return 0
elif [ "$prev3" == "flash" ];then
COMPREPLY=()
return 0
fi
;;
esac
COMPREPLY=( $(compgen -W "$opts" -- $cur) )
return 0
}
complete -F _fastboot fastboot
登出後重新登入系統,再試試fastboot flash命令,你會發現比以前更好用了。
相關文章