分页: 1 / 2

终端为何不能自动填充了?

发表于 : 2016-04-27 14:14
tang.zhe
16.04的tab键不好用了。。。

Re: 终端为何不能自动填充了?

发表于 : 2016-04-27 15:05
vickycq
说明使用的 $SHELL

可具体说明场景,补全哪些命令的哪些部分不好使?
输入 apt [TAB] [TAB] 能否补全出 apt-get apt-cache aptitude 等?
输入 apt-get [TAB] [TAB] 能否补全出 autoclean build-dep check 等?

若 $SHELL 为 bash,重新安装 bash-completion

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 9:43
tang.zhe
不明白shell,我就是用默认的ctrl+shift+t。

代码: 全选

[tz@utz:~$ sudo apt-g
/code]
按tab没反应,15.10之前都没问题。才用几天,没做什么调整。是否需要删除配置?

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 11:01
photor
tang.zhe 写了:不明白shell,我就是用默认的ctrl+shift+t。

代码: 全选

[tz@utz:~$ sudo apt-g
/code]
按tab没反应,15.10之前都没问题。才用几天,没做什么调整。是否需要删除配置?[/quote]
按照2楼爱因斯坦说的,看看重新安装bash-completion这个软件包能否解决问题 :em09

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 11:10
tang.zhe

代码: 全选

tz@utz:~$ bash-completion
bash-completion:未找到命令
tz@utz:~$ 

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 11:15
vickycq
tang.zhe 写了:sudo apt-g
按tab没反应,15.10之前都没问题。才用几天,没做什么调整。是否需要删除配置?
不要加 sudo 试试?按3下tab
tang.zhe 写了:bash-completion:未找到命令

代码: 全选

sudo apt-get install bash-completion

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 11:17
poloshiao
bash-completion
bash-completion:未找到命令
1. http://packages.ubuntu.com/xenial/bash-completion
Package: bash-completion (1:2.1-4.2ubuntu1)
bash-completion 是套件 不是指令
1-1. 安裝 bash-completion 套件
sudo apt-get install bash-completion
输入 apt [TAB] [TAB] 能否补全出 apt-get apt-cache aptitude 等?
输入 apt-get [TAB] [TAB] 能否补全出 autoclean build-dep check 等?
2. 終端機
輸入 apt
按下 <TAB> 鍵
再按下 <TAB> 鍵
看看
剛剛輸入的 apt 後面有沒有出現什麼東西 ?

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 11:55
tang.zhe

代码: 全选

tz@utz:~$ apt-
apt-add-repository    apt-extracttemplates  apt-mark
apt-cache             apt-ftparchive        apt-sortpkgs
apt-cdrom             apt-get               
apt-config            apt-key               
tz@utz:~$ sudo apt-get install bash-completion
[sudo] tz 的密码: 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
bash-completion 已经是最新版 (1:2.1-4.2ubuntu1)。
bash-completion 已设置为手动安装。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 13 个软件包未被升级。
tz@utz:~$ apt-get ins

apt-get i后出不来install了,我记得以前可以的。

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 12:04
poloshiao
1. 把下面指令 複製 貼進終端機 執行
sudo echo $SHELL
把結果直接 選取/複製 貼上來
bash-completion 已经是最新版 (1:2.1-4.2ubuntu1)。
若 $SHELL 为 bash,重新安装 bash-completion
2. 把下面指令 複製 貼進終端機 執行
sudo apt-get install --reinstall bash-completion
2-1. 如果出現錯誤訊息 複製貼上來

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 12:08
vickycq
如果为 bash,检查 ~/.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

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 12:08
rosynirvana
photor 写了:
tang.zhe 写了:不明白shell,我就是用默认的ctrl+shift+t。

代码: 全选

[tz@utz:~$ sudo apt-g
/code]
按tab没反应,15.10之前都没问题。才用几天,没做什么调整。是否需要删除配置?[/quote]
按照2楼爱因斯坦说的,看看重新安装bash-completion这个软件包能否解决问题 :em09[/quote]
他头像是小克莱伯

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 14:44
tang.zhe
tz@utz:~$ sudo echo $SHELL
[sudo] tz 的密码:
/bin/bash
tz@utz:~$

tz@utz:~$ sudo apt-get install --reinstall bash-completion
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
升级了 0 个软件包,新安装了 0 个软件包,重新安装了 1 个软件包,要卸载 0 个软件包,有 13 个软件包未被升级。
需要下载 153 kB 的归档。
解压缩后会消耗 0 B 的额外空间。
获取:1 http://cn.archive.ubuntu.com/ubuntu xenial/main amd64 bash-completion all 1:2.1-4.2ubuntu1 [153 kB]
已下载 153 kB,耗时 1秒 (129 kB/s)
(正在读取数据库 ... 系统当前共安装有 187435 个文件和目录。)
正准备解包 .../bash-completion_1%3a2.1-4.2ubuntu1_all.deb ...
正在将 bash-completion (1:2.1-4.2ubuntu1) 解包到 (1:2.1-4.2ubuntu1) 上 ...
被已安装的软件包 apt (1.2.10ubuntu1) 中的文件替换了...
正在处理用于 man-db (2.7.5-1) 的触发器 ...
正在设置 bash-completion (1:2.1-4.2ubuntu1) ...
tz@utz:~$ apt
apt aptd apt-key
apt-add-repository aptdcon apt-mark
apt-cache apt-extracttemplates apt-sortpkgs
apt-cdrom apt-ftparchive apturl
apt-config apt-get apturl-gtk
tz@utz:~$ apt-get i
还是不行,需要重启吗?

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 14:48
tang.zhe
vickycq 写了:如果为 bash,检查 ~/.bashrc 中是否含有
[/code]
没有这个文件或文件夹。。。

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 14:57
tang.zhe
apt-后按tab,能出来一些后续命令,但apt-get ins后按tab就不行,而且sudo apt-也不行。
因安装都需要sudo,我以前用sudo apt-get in后,按tab都好用,应该还有问题。

Re: 终端为何不能自动填充了?

发表于 : 2016-05-03 16:15
poloshiao
apt-get i
还是不行,需要重启吗?
1. sudo dpkg -S apt-get | grep bin
apt: /usr/bin/apt-get
表示 apt-get 指令 來自 apt 套件

2. apt 套件 跟 bash-completion 還有許多不相容之處 參見
2-1. http://askubuntu.com/questions/445637/c ... pt-command
Can I enable bash-completion for the new apt command?
2-2. http://meta.askubuntu.com/questions/887 ... n-specific
Don't mix version specific tags with stuff that isn't version specific!