加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux – 从终端历史记录中搜索和替换命令

发布时间:2020-12-24 14:57:38 所属栏目:Linux 来源:网络整理
导读:我想知道如何/如果我可以重用我的终端历史记录中的命令,但是在修改后的版本中.这是一个例子: $filter_script file2 output_file2$# ...# now run the same command,but replace '2' with '4'$filter_script file4 output_file4 这是一个非常简单的例子,当然

我想知道如何/如果我可以重用我的终端历史记录中的命令,但是在修改后的版本中.这是一个例子:

$filter_script file2 > output_file2
$# ...
# now run the same command,but replace '2' with '4'
$filter_script file4 > output_file4

这是一个非常简单的例子,当然我可以简单地从历史记录中访问命令并手动替换这两个2,但是有更优雅的方式吗?

非常感谢你的时间!

解决方法

如果你想要替换的只有一个实例,bash(1)有一个简单的功能,首先在csh(1)中引入:
^old^new

将用new取代旧的第一个实例:

$filter_script file2 > output_file2
$^2^4
filter_script file4 > output_file2

如果要替换所有实例,则需要更多输入:

$filter_script file2 > output_file2
$!:gs/2/4/
filter_script file4 > output_file4

g指定命令行上的全局替换.的!是指历史记录中的一行 – 如果您想在历史记录中进一步返回上一个命令,则可能更具体.请参阅bash(1)关于事件指示符的部分.

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读