【问题标题】:Using a variable inside Sed expression for the command在 Sed 表达式中为命令使用变量
【发布时间】:2017-02-01 00:05:39
【问题描述】:

我正在尝试根据行号更改文件中的一些内容。

sed -n -i "$command|ABC|XYZ" ".$file_name"

命令变量取200s,311s等值

我收到“sed: -e expression #1, char 32: unterminated `s' command”

可能出了什么问题?

【问题讨论】:

  • XYZ 之后缺少| 吗?
  • 谢谢@oliv!它现在适用于您的更改。

标签: regex bash sed


【解决方案1】:

你可以试试这个;

sed -i "$command|ABC|XYZ|" ".$file_name"

您需要在 XYZ 之后插入 | 并删除 -n 选项。

【讨论】:

  • 为什么要将 ".$file_name" 更改为 ${file_name} ? OP 可能希望对隐藏文件应用命令,并且应该引用文件名。
  • 感谢 muzido 和 Kenavoz。它在建议的更改后开始工作
猜你喜欢
  • 2012-06-24
  • 2011-04-23
  • 2022-01-08
  • 2017-07-10
  • 1970-01-01
  • 2011-12-01
  • 2012-10-29
相关资源
最近更新 更多