bash - 如何将星号(*)整合到sed中不断变化的模式中?
问题描述
我有一个test1.txt
文件,其中包含很多不同信息的行。其中,有些线路有这样的信息:
Fam_grapsidae
Fam_bursidae
Fam_siluridae
我想更改Fam_*
into italic{*}
,以便拥有 in test2.txt
:
italic{grapsidae}
italic{bursidae}
italic{siluridae}
所以我尝试了sed
:
sed 's/Fam_*/italic{*\}/g' test1.txt > test2.txt
但我得到了这个:
italic{*}grapsidae
那么,我怎样才能在sed
命令中整合星星来italic{grapsidae}
表达呢?
任何意见是极大的赞赏。
解决方案
你想要的是:
sed 's/Fam_\(.*\)/italic{\1}/' test1.txt > test2.txt
推荐阅读
- dbt - dbt:sql_header 宏限制与查询注释
- angular - 许多图标按钮导致网站速度急剧下降
- python - 使用来自其他函数的变量
- javascript - CRA 项目中是否有一种简单的方法可以封装特定的文件夹层次结构?
- tsql - sp_executesql 参数列表中的表变量
- python - 带有二维数组的curve_fit()
- python-3.x - 另一个 IDE 中 HackerRank 中的副本输入(sublime text 或 spyder)
- symfony - Symfony 验证器的注释返回“注释从未导入异常”
- actionscript-3 - 数字标牌 - 大约 2 小时后视频变慢
- machine-learning - 深度学习中的大量虚拟变量