例如我输入
cat /very/long/path/textfile
然后我决定发出下一个命令
rm /very/long/path/textfile
所以,我的问题是:替换前一个命令的第一个单词的最简单/最快的方法是什么?(无需箭头键或复制粘贴)
它应该适用于任何命令(cat、rm 和 textfile 仅适用于此示例,不一定是这些)
答案1
假设您正在运行具有标准历史记录机制的 shell(例如 bash、C shell 等),请键入新命令(例如rm
),然后键入!*
。键入man bash
、man csh
或任何适合您的命令,以查看更多详细信息(并且有很多其中 )。
答案2
如果您使用的是 bash,则可以键入<Esc>_
来获取上一个命令的最后一个参数。您也可以使用变量$_
。
另一种方法是使用 调用前一个命令Ctrl-P
,然后使用Ctrl-A
移动到命令的开头,然后Alt-D
删除第一个单词,键入新的第一个单词(命令名称)并按 Enter。
答案3
如果您使用 bash 或 sh,您可以键入第一个命令,然后按“Alt”和“。”(点)来获取前一个命令的最后一个参数。
cat /very/long/path/textfile
使用先前命令类型的最后一个参数
rm“Alt+.”你会得到
rm /very/long/path/textfile