linux - 在 bash 中使用 awk 变量

标签 linux bash shell awk

我有一个 awk 脚本,用于获取系统中 eth 中断的总数。

#!/bin/bash

FILE="/proc/interrupts"

awk 'NR==1 {
core_count = NF 
print "core count: ", core_count
next
}

/eth/ {
 for (i = 2; i <= 2+core_count; i++)
 totals[i-2] += $i
}

END {
print "Totals"
for (i = 0; i < core_count; i++)
printf("CPU%d: %d\n", i, totals[i])
}
' $FILE

在 bash 的最后,我得到了 core_count 和总计数组。但是,我需要使用这些变量,如何在脚本的其余部分使用它们?换句话说,如何全局化它们?

最佳答案

你不能。回响它们并将它们拉进来。

{ read core_count ; read -a totals ; } < <(echo -e "2\n4 5")

关于linux - 在 bash 中使用 awk 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11607005/

相关文章:

sql-server - 如何编写 bash 和 sql 文件来设置 postgres 用户?

linux - Bash 脚本生成空文件

linux - 即使我在组中也无法进入 770 目录 - IPA 复杂化

linux - 在 bash 中使用 for 循环检查数组元素是否为空

shell - 在 shell 中的双引号字符串中转义反引号

bash - 一个简单的小 shell 脚本来计算平均值

linux - 附加到 shell 中具有特定键的行

linux - 限制 proftpd 用户的访问

regex - 使用正则表达式通过 Bash 检查范围

bash - 在 Alpine 中检查文件校验和