【问题标题】:How would I make the true results of this awk command issue a command like sendmail etc [closed]我如何让这个 awk 命令的真实结果发出类似 sendmail 等命令 [关闭]
【发布时间】:2017-01-26 13:22:53
【问题描述】:

我正在尝试创建一个脚本来检查 CSV 输出中每一行的第 5 个值。例如:

AAA,111,222,333,1

这是我正在使用的:

awk -F "," '{if ($5 > 10) print $1 " has a value of " $5}' results

我错过了“,”......我希望创建的是,如果结果实际上更大,是的,那么我可以发出带有结果的类似 sendmail 的命令。如果 false 什么都不做。

【问题讨论】:

  • "它没有产生结果" 什么没有产生结果?你没有分享你的代码。
  • 显示您的代码。给出准确的输入、预期输出和实际输出。

标签: linux bash awk scripting arguments


【解决方案1】:

你只需要做你说你想做的就是:

awk -F, '{printf "1st-column-value has 5th-column-value %s than 10\n", ($5>10 ? "greater" : "less")}' file

但当然你的逻辑是错误的(考虑equal to 10)和idk,如果你真的想要打印第一列值而不是你在问题中陈述的文本1st-column-value,依此类推,因为你没有在您的问题中包含简洁、可测试的样本输入和预期输出。

【讨论】:

    猜你喜欢
    • 2011-04-18
    • 2014-01-20
    • 2013-05-03
    • 2020-03-01
    • 1970-01-01
    • 2014-07-06
    • 1970-01-01
    • 2012-09-02
    • 1970-01-01
    相关资源
    最近更新 更多