使用 Tab 键激活多行编写结构化命令

使用 Tab 键激活多行编写结构化命令

我想在多行中编写结构化命令

$ for i in *;
→ do
→    file $i;
→ done
bmdt.md: ASCII text
breakfast.md: ASCII text
brmdh.md: ASCII text
test.sh: Bourne-Again shell script text executable, ASCII text

但发现该选项卡不起作用,

我如何才能激活 Bash 控制台中的 Tab 键?

答案1

Enter当您输入不完整的命令后按, bashshell 将显示继续提示符(辅助提示符$PS2)并允许您完成输入的命令。此时 shell 的命令行编辑功能与原始提示符(主提示符 )相同$PS1,这意味着该Tab键将照常完成命令和文件名补全。

要插入制表符,请使用Ctrl+V Tab,或使用空格进行缩进。如果以 为前缀,则始终可以插入制表符(或任何其他文字字符)Ctrl+V


或者,如果处于 Emacs 命令行编辑模式(我相信这是 中的默认模式bash),请使用Ctrl+X Ctrl+E打开编辑器来输入命令。使用的编辑器将是由EDITORshell/环境变量指定的编辑器,或者emacs如果该变量未设置的话。

在 Vi 命令行编辑模式下,按Escape v执行相同的操作。

该命令将在保存并退出编辑器后执行。

相关内容