Linux Shell 按Tab键不能补全

Linux Shell 按Tab键不能补全,第1张

在Linux的终端中输入tab键时,有时会出现命令不能补全的情况,此时有一种原因是bash错误。

使用 ls -l /bin/sh 命令发现

/bin/sh ->/bin/dash

dash是一个不同于bash的Shell,它主要为了执行脚本而出现,而不是交互,它速度更快,但功能比bash要少的多。语法严格遵守POSIX标准。

通过命令 ln -sf bash /bin/sh 可以将dash改成bash。此时问题可以解决。

Ubuntu系统在某些情况下,apt-get 不能补全相关命令,可以通过修改/etc/bash.bashrc文件的相关行,把默认的#号去掉即可。

if [ -f /etc/bash_completion ]then

/etc/bash_completion

fi

重新登录Shell即可。

此处参考: http://freddy.cc/article/185.

本文出自 “ 低调的前进 ” 博客,请务必保留此出处 http://tdppro.blog.51cto.com/749956/1248285

1.只需输入文件或目录名的前几个字符,然后按TAB键,如无相重的,完整的文件名立即自动在命令行出现,如有相重的,再按一下TAB键,系统会列出当前目录下所有以这几个字符开头的名字

2. 在命令行下,只需输入例如m,再连续按两次TAB键,系统将列出所有以m开头的命令,(包括自定义的Bshell命令函数),对查找某些记不清楚的命令特有用。例如输入ftp,将查到ftp,ftpcount,ftpwho,ftpshut等本不熟悉的命令。

如何像使用Ubuntu一样方便使用tab键自动补全命令,bash-completion增强bash的自动补全功能

最早接触的linux发行版本是ubuntu,后来学习工作等原因转向了RedHat系的发行版本,使用中发现同样使用的是bash但是redhat系中bash的补全功能却比ubuntu中bash的补全功能弱了不少,后来查资料发现是ubuntu中预装了bash-completion这个软件。安装上这个软件后你的bash补全功能就和ubuntu中的一样强大了

在这里下推荐一个YUM源很不错的,软件很齐全

vim /etc/yum.repos.d/bash.repo

[DAG]

name=DAG repo

baseurl=$releasever/en/$basearch/dag/

gpgcheck=0

enabled=1

#yum search bash-completion

#yum install bash-completion

上面这段加入你的yum源中然后就可以很爽的使用tab键了;


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8795353.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-21
下一篇 2023-04-21

发表评论

登录后才能评论

评论列表(0条)

保存