1. 程式人生 > >【ubuntu_problems】Ubuntu輸入指令時自動補全的相關問題

【ubuntu_problems】Ubuntu輸入指令時自動補全的相關問題

(1)apt-get install無法自動補全的情況

經常碰到執行apt-get指令安裝ROS的包時無法自動補全的情況, 可能重啟一下就沒問題了.
搜一下,也可以用更方便的方法解決.

開啟~/.bashr檔案

gedit ~/.bashrc

在原內容末尾附件找到

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
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

可知這裡的東西跟自動補全有關.
估計在開終端或者執行指令過程中影響到了環境變數.讓其環境變數重新生效一下:

source /etc/bash_completion

如果提示檔案不存在,說明/etc下沒有bash_completion檔案,沒有的話安裝一下:

sudo apt-get install bash-completion

(2)按tab自動補全時跳出一大串提示的情況

經常在用超級許可權修改完/opt/ros/下的某些檔案後,執行ROS相關指令時會出現這種情況:

[rospack] Warning: error while crawling /home/xxx: 
boost::filesystem::status: Permission denied: 
"/home/xxx/.gvfs"

雖然也會補全,但是在輸入的程式碼中間插著這樣一條提示怎麼看也不爽.
解決的辦法很簡單,就是把它刪了:

sudo umount ~/.gvfs
#解除佔用 rm -R ~/.gvfs #刪除

參考:
http://www.cnblogs.com/fengmk2/archive/2010/08/22/apt-get-audo-completion.html
http://answers.ros.org/question/76896/permission-denied-gvfs/