设置 – $(cat / proc / loadavg)

嗨,我有一个这样做的munin插件

load_fetch() { set -- $(cat /proc/loadavg) cat <<EOF load1.value $1 load5.value $2 load15.value $3 EOF } 

如果有人能告诉我这个“集合”在做什么,我就会摔倒了。 它不是一个东方的谷歌和得到的结果。

http://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html有一个解释&#x3002; 这个命令(重新)设置参数variables(在这种情况下$ 1,$ 2,$ 3,$ 4和$ 5)。 cat /proc/loadavg为你提供了一些数字,给输出set --这些数字映射到$ Nvariables。

例如见:

 $ echo $1 $2 $ set -- HELLO WORLD $ echo $1 HELLO $ echo $2 WORLD 

“套 – ”是一个bash条款,因此不是特定于munin。 进入bash帮助设置参数,你可以find这个:

– 如果没有参数跟随此选项,则位置参数未设置。 否则,位置参数被设置为参数,即使它们中的一些以“ – ”开始。

在你的具体情况下,它所做的是将cat / proc / loadavg的内容作为参数$ 1 $ 2和$ 3进行映射/传递,因此可以将它们分别分配给load1.value,load5.value和load15.value

有关更多信息,请使用man或以下URL: http : //www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html