【问题标题】:Error in SED command used in mailing script邮件脚本中使用的 SED 命令出错
【发布时间】:2012-09-17 10:54:17
【问题描述】:

我用过这个

$ rc = system("sed -e 's/Monyear/$Month//g' <
  $Script_Path/Mailcontent.txt.template > $Script_Path/Mailcontent.txt");

在邮件脚本中

我遇到了类似的错误

sed: -e expression #1, char 19: unknown option to `s'

【问题讨论】:

  • 这是什么system()函数?它不是 bash 的一部分。
  • @ghoti system() 是大多数编程语言中用于调用系统默认应用程序的函数。例如,如果您在 windows 上调用 system("cls"),它将清除命令提示符屏幕,在 unix 上调用 system("clear"),将清除 unix 终端。 Sed 是一个 unix 默认应用程序。
  • @ghaschel - 如果您知道 OP 使用的编程语言,请添加适当的标签。目前唯一标记为这个问题的编程语言是 shell 和 sed。事实上,这看起来像一个XY Problem
  • @ghoti 我不知道他使用的编程语言,我只是说因为我有时会使用system()。不是说这不是 XY 问题。只是澄清我的答案。
  • @ghaschel - 我没有看到你的答案。我am 建议这是一个 XY 问题。大多数包含system()exec() 函数的语言都有自己的打开和操作文件的方法。使用它们几乎总是比运行这样的命令更安全、更快。此问题寻求帮助实施解决我们实际上并不知道的问题的解决方案。

标签: shell unix sed mailing


【解决方案1】:

你的/ 太多了。这样做:

s/Monyear/$Month/g

【讨论】:

    猜你喜欢
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 2018-08-17
    • 1970-01-01
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 2017-03-05
    相关资源
    最近更新 更多