在终端命令行上移动光标的最快方式? [英] Fastest way(s) to move the cursor on a terminal command line?
本文介绍了在终端命令行上移动光标的最快方式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在终端中给定的超长命令行上移动的最佳方式是什么?
假设我使用箭头键或Ctrl-R来获取此长命令行:
./cmd --option1 --option2 --option3 --option4 --option5 --option6 --option7 --option8 --option9 --option10 --option11 --option12 --option13 --option14 --option15 --option16 --option17 --option18 --option19 --option20 --option21 --option22 --option23 --option24 --option25 --option26 --option27 --option28 --option29 --option30 --option31 --option32 --option33 --option34 --option35 --option36 --option37 --option38 --option39 --option40 --option41 --option42 --option43 --option44 --option45 --option46 --option47 --option48 --option49 --option50
现在我需要将光标移动(从行首或行尾开始)到--option25
以修改那里的某些内容。
option25
?
推荐答案
由于尚未关闭,这里有其他几个选项。
- 使用
+x,然后Ctrl+e在 $FCEDIT
或$EDITOR
或emacs
(按该顺序尝试)指定的编辑器中打开当前行。 - 如果您之前运行了该命令,请按Ctrl+r进行反向历史搜索,然后键入
option25
(在本例中)。将显示该行。单击选项卡从此时开始编辑。 - 使用带
s///
修饰符的历史扩展。例如,!-2:s/--option25/--newoption/
将重新运行倒数第二个命令,但替换选项25。要修改最后的./cmd
命令,请使用!string
语法:!./cmd:s/--option25/--newoption/
可以在替换中使用任何分隔符。 - 如果编辑前一行,可以使用快速替换:
^--option25^--newoption
- 字符搜索。这是Pax提到的,可以在常规emacs模式下使用Ctrl+]进行正向搜索,使用Ctrl+Alt]进行后向搜索。
我推荐第二个选项。Ctrl+r非常方便快捷,不会与编辑器胡乱操作,而且您可以在命令运行之前看到结果(与历史记录展开不同)。
这篇关于在终端命令行上移动光标的最快方式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文