当我从 SSH 登录到我的机器时,bash 似乎不想自动完成命令(现在让我烦恼的不是自动完成 apt-get)。是否有一些设置允许 bash 在 ssh 会话中自动完成?
答案1
简而言之:source /etc/bash_completion
应该可以解决问题(在 SSH 会话中的 shell 中运行它)。
长话短说:为了让 bash 完成工作正常,您必须告诉bash
如何完成每个命令的参数。这需要对bash
内置命令进行一长串调用complete
;因此,它们通常被收集在一个单独的脚本(或 中的几个脚本/etc/bash.complete.d/*
)中来加载它们。
作为常规 shell 脚本,您始终可以bash_completion
在任何 shell 中加载启动脚本( ~/.bash_profile
, ~/.bash_login
, ~/.bashrc
)
进一步阅读:
- 部分可编程完成在手册页中
bash(1)
- 命令的帮助文本
complete
(运行:help complete
inbash
)