如何在bash终端中选择行

时间:2010-10-01 13:25:16

标签: bash terminal

是否可以在bash终端中选择字符串的一部分并立即删除它,而不是导航到命令中的某个点并将其全部退回?

谢谢!

3 个答案:

答案 0 :(得分:3)

我不是100%确定我理解你的问题。

如果您在交互式命令行:

  • ctrl-u:删除光标左侧的所有内容
  • ctrl-k:删除光标右侧的所有内容

答案 1 :(得分:2)

我正在使用emacs绑定和我最喜欢的命令行快捷方式,这些快捷方式未包含在之前链接的教程中,如下所示:

^W     - delete last word
meta-b - move cursor back one word
^R     - find a previously used command
!$     - last attribute of the last command
!!     - last command

您还可以使用regexp操纵历史记录,尽管这可能会很快变得非常混乱。请参阅“man zshexpn”以供参考,大多数相同的regexp语法也适用于bash。

示例:

1)如果执行以下命令:

 echo first second third fourth fifth

2)然后你可以执行相同的命令并删除“first”:

 !!:s/first//

如果这不是您所追求的,请澄清您的问题! :)

答案 2 :(得分:1)

this。或者,set -o vi具有类似vim的键绑定。

请注意,链接中提供的列表未满。您可以阅读man bash以获得良好的参考。通常,如果您在使用Alt函数快捷方式的终端中运行bash,那么ALT-x可能会被ESC替换为x。