假设我使用 CTRL-R,然后输入 tail 来查找上次运行 tail 的时间。
出现的是 tail -F /path/to/log/file-2011-03-07.log
我想要运行的命令是上面的命令,但使用 2011-03-08 而不是 2011-03-07。有没有办法通过命令行使用正则表达式进行替换?
答案1
r 7=8 tail
应该可以。阅读fc
和r
;它们不太为人所知,但对于这种事情非常有用。
没有直接的正则表达式编辑,但如果fc
直接使用,您可以尝试fc -e
一下。(确实,fc -e 'sed -ie s/foo/bar/' command
似乎有效。您可能能够将其包装在函数中。)还可以-m
使用 shell glob 从历史记录中选择命令。