awk - 评估在 awk 中作为参数传递的算术表达式

标签 awk

如何计算在 awk 中作为参数传递的算术表达式?

我把这个放在一个文件里。

1*2*3
1+2*3

传入这个文件时,awk 应该输出 6、7。

最佳答案

awk(1) 是错误的工具,因为它没有 eval() 函数。我建议将文件修改为 bc(1) 的输入或使用 shell 算术扩展:

while read expr; do
    echo "$(($expr))"
done < file

关于awk - 评估在 awk 中作为参数传递的算术表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4292580/

相关文章:

python - 根据列合并多个 CSV 文件

linux - 如何将 <85> 替换为 bash 脚本中的新行

linux - awk 不打印分隔符

bash - Sed/Awk : Delete all lines after last occurrence of pattern

sed - 使用 sed 替换/使用 TAB

bash - 有没有办法避免 awk 中的 "newline in string"错误?

regex - 合并行落在之间但不包括 sed 的重复模式

awk--将字符串拆分为长度为n的子字符串

awk - 计算文件中的残基数

unix - 使用 AWK 比较多个文件中的字段时的条件匹配