$ # Cursor position is shown as |
$ ls foo bar|
$ # Press <Ctrl-W> to cut the argument just before the cursor
$ ls foo |
$ # Now press <Alt-B> to move the cursor one argument back
$ ls |foo
$ # Now press <Ctrl-Y> to paste the cut argument
$ ls bar|foo
$ # Now press <space> to insert a space between the arguments
$ ls bar |foo
$ # You can safely press <enter> while the cursor is in the middle of the line
$ ls bar |foo
bar foo
3条答案
按热度按时间7rfyedvj1#
是的,您可以使用历史替换:
6rvt4ljy2#
您可以使用Alt + t来交换当前单词和前一个单词。
Here是更多的快捷键。
请注意,您交换的是单词,而不是参数。例如,如果您混淆了
grep
的参数顺序,如grep ~/Documents/myFile searchString
,并希望将其更正为grep searchString ~/Documents/myFile
,Alt + t不会帮助您。用Paul的答案来代替,并执行
!:0 !:2 !:1
。如果这对你来说太不方便了(对我来说是这样),你可以在
~/.bash_alias
中创建一个别名:pieyvz9o3#
2022更新
你可以很容易地剪切和粘贴参数,我经常剪切最后一个参数并将其粘贴到不同的地方。
Ctrl-W
将剪切光标前的参数,Ctrl-Y
将其粘贴。