如何将(mpstat)命令的输出存储在 shell 脚本中的变量中

如何将(mpstat)命令的输出存储在 shell 脚本中的变量中

我想要存储每个命令的输出mpstatmpstat -P ALL%usr,%nice,%sys,...在变量中一样。

你能帮我做这个吗,因为我想对其中一些进行总结。

答案1

这是一件很难的事,但我还是设法为你做了一些事。

此行将在名为 CPU 的变量中打印 CPU 数据

eval "$(mpstat | awk '{print $3}' | xargs | awk '{print $2"="$3}')"

完成此操作后执行echo $CPU

你会得到

[root@localhost BASH]# echo $CPU
all
[root@localhost BASH]#

%usr可以使用eval "$(mpstat | awk '{print $4}' | xargs | awk '{print "USR="$3}')"

看下面的例子

[root@localhost BASH]# eval "$(mpstat | awk '{print $4}' | xargs | awk '{print "USR="$3}')"
[root@localhost BASH]# echo $USR
0.11
[root@localhost BASH]#

我希望您了解如何做到这一点,并且可以根据自己的需要开发完整的代码。

概括:

[root@localhost BASH]# cat  forsome.sh
#!/bin/bash
eval "$(mpstat | awk '{print $3}' | xargs | awk '{print $2"="$3}')"
eval "$(mpstat | awk '{print $4}' | xargs | awk '{print "USR="$3}')"
echo "Number of CPU's :"$CPU
echo "%usr value      :"$USR

[root@localhost BASH]# ./forsome.sh
Number of CPU's :all
%usr value      :0.11
[root@localhost BASH]#

相关内容