You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用sed的r命令读取文件时出现缺失文件名报错的原因

sed执行r命令报错的原因及修正

错误根源

你用的sed '/Version:/r' filename不符合r命令的语法规范。sed的r命令是读取另一个文件的内容,插入到匹配到的行之后,它的语法必须是:

/匹配正则/r 要读取的文件名

你的命令里r后面没有指定要读取的目标文件名,sed无法完成读取操作,所以抛出了missing filename in r/R/w/W commands的错误。

你的需求对应的正确sed写法

你要的是提取文件中以Version:开头的行,这时候应该用sed的打印命令p,配合-n参数只输出匹配的行,命令如下:

sed -n '/Version:/p' filename

这个命令和你最终用的grep 'Version:' filename效果完全一致。

补充:sed r命令的正确用法示例

如果确实需要用r命令,比如想在匹配到Version:的行后面插入另一个文件extra.txt的内容,命令应该是:

sed '/Version:/r extra.txt' filename

内容的提问来源于stack exchange,提问作者iago

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 12:12:04