【发布时间】:2017-05-15 09:18:36
【问题描述】:
是否可以在使用搜索编辑长 bash 命令时移动光标,而不仅仅是使用箭头?在当前输入的命令中进行正则表达式搜索。据我了解 bash 自己无法做到这一点,但可能还有其他方便的解决方案?
【问题讨论】:
标签: bash command-line
是否可以在使用搜索编辑长 bash 命令时移动光标,而不仅仅是使用箭头?在当前输入的命令中进行正则表达式搜索。据我了解 bash 自己无法做到这一点,但可能还有其他方便的解决方案?
【问题讨论】:
标签: bash command-line
实现您所追求的最佳方式(如果您在十个月后仍然想知道)是使用快捷方式生成 bash 默认编辑器(可以在 bash 上使用 export EDITOR=vim 更改):
Ctrl+x+e
(按住 Ctrl,然后按 x,然后按 e)。
来自 bash 人:
编辑和执行命令 (C-xC-e)
在当前命令行上调用编辑器,并将结果作为 shell 命令执行。 Bash 尝试按顺序调用 $VISUAL、$EDITOR 和 emacs 作为编辑器。
您会发现自己进入了一个 vim(或 vi、nano 或其他......)会话,您可以在其中使用编辑器提供的每个快捷方式编写命令。 这种方法的缺点是,很明显,您会丢失 bash 快捷方式,因此在会话期间没有用于完成的选项卡。
老实说,当命令太大时,我喜欢自己在文本文件中编辑它,将其作为脚本运行。这允许您测试和更改命令,直到它工作为止,Ctrl+x+e 创建一个临时文件,一旦命令运行。
【讨论】:
我个人所做的是 CTRL+ArrowL/R 它将逐字移动光标而不是逐字母移动。您还可以使用键盘上的这些箭头:↖ ↘ 转到当前行的开头(分别为:结尾)。其背后的想法是更高效地编辑命令行。
但我认为没有可用的命令搜索...或者您可以将其写入脚本并使用文本编辑器进行搜索
【讨论】: