Answers:
Tab正是您需要的。如果您按下tab两次,它将显示所有可能的完成:
$ cd /usr/ ## Hit tab twice here
bin/ include/ lib64/ sbin/ src/
games/ lib/ local/ share/ var/
您不需要知道第一个字母,第二个字母tab会显示所有内容。
Tab很好地完成了可用的命令中的部分书面命令(或选项),正如Terdon 在另一个答案中强调的那样。
要完成一个命令,只需按Tab一次即可。要获得完整列表,请再次按Tab。
此外,您可能想自定义的行为Tab。例如,尝试以下两行:
bind "TAB:menu-complete"
bind "set show-all-if-ambiguous on"
第一个Tab向您展示所有可能性,并使用第一个可用的可能性自动完成命令,从第二次按下Tab 时开始在其中循环。
笔记:
您可以编写自己的带有规则选项的bash完成脚本 ...
本文介绍了bash完成的更多提示:第一部分是基础,第二部分是编写您自己的脚本。
您可能会bind
complete
在下面找到有趣的参考资料。
即使在编写脚本并且您想避免被特洛伊木马利用的风险时,这是一种好习惯,但并非总是必须在每个命令中都写出绝对路径(完整)。
有一些快捷方式去得更快,例如Tab,,,和在当前shell中定义的所有变量。 Alt+..~
这里下面一些例子(.来这里和~手段家):
将文件复制到当前目录足以写入
将文件从目录复制到当前目录,您可以写入
将文件从当前目录复制到最后一个目录将写入历史记录中存储的最后一个命令的最后一个参数。如果再次按下,它将用bash历史记录中的上一个位置替换刚刚找到的位置。用一个例子更简单:cp /my/far/far/away/myfile .
home
cp ~/myfile .
cp myfile $OLDPWD
Alt+.
mkdir OldDir
mkdir NewDir
cd # here press `Alt + .` and it will autocomplete with NewDir
# press `Alt + .` again and you will see "cd OldDir"
参考文献: