Назад | Перейти на главную страницу

набор - $ (cat / proc / loadavg)

Привет, у меня есть плагин munin, который делает это

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

Мне было интересно, может ли кто-нибудь сказать мне, что делает «набор -»? это не восток, чтобы гуглить и получать результаты.

"Set -" является предложением bash и поэтому не относится к munin. Получив справку bash по заданному параметру, вы можете найти это:

- Если за этой опцией нет аргументов, то позиционные параметры не устанавливаются. В противном случае позиционные параметры устанавливаются в качестве аргументов, даже если некоторые из них начинаются с «-».

В вашем конкретном случае он отображает / передает содержимое 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

http://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html есть объяснение. Эта команда (повторно) устанавливает переменные аргумента (в данном случае $ 1, $ 2, $ 3, $ 4 и $ 5). cat /proc/loadavg дает вам строку с некоторыми числами, передавая вывод в set -- отображает эти числа в $ N-переменные.

См. Например:

$ echo $1 $2

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