示例:
首先输入以下命令
command1 arg1 arg2 arg3 -- filearg1 filearg2
输入完成后,回车才发现 command1 打错了,需要改为
command2 arg1 arg2 arg3 -- filearg1 filearg2
遇到这种情况,我都是 C-n 调用上一个历史,还得费劲挪动光标到最前面,才可以更改,有没有类似于 doskey 的使用方式?(输入 command2, 然后按下 f3, 自动补齐上一行剩下的字符)
别沉下去,谁知道呀~
$^command1^command2^这道命令的原始样式应该是这样的: $!!:s/command1/command2/
^command1^command2^
!!:s/command1/command2/
试试 ctrl + r,输入历史命令的片段,会有惊喜
哦,不对,不是跟你说的那种需求
#4 楼 @suupic
C-r 我知道。我经常在用啊。那是在历史记录中进行 isearch 搜索。
Ctrl-a Alt-f Ctrl-h
command2 !!:*
http://www.catonmat.net/download/bash-history-cheat-sheet.pdf
#6 楼 @lululau
这个方案我也知道,事实上 Alt-f 和 Ctrl-h 可以省略为 Alt-d, 我只是喜欢多一点解决办法。
#7 楼 @quakewang
谢谢,这正是我要的。刚刚还特意查了下,早就忘记还有这个用法了。
貌似多了一个!, 我发现 command2 !:* 也是可以的。
#8 楼 @zw963 不可能有更好的方法了。。。