如何将命令的输出分配给变量?

有没有办法为变量赋值,即通过编写任何命令在终端中获得的值?

示例命令: sensors

从那我们得到CPU温度。 如何将此值分配给temp_cpu变量?

是的,你使用my_var=$(some_command) 。 例如:

 $ foo=$(date) $ echo $foo Mon Jul 22 18:10:24 CLT 2013 

或者就您的具体示例而言,使用sedgrep获取所需的特定数据:

 $ cpu_temp=$(sensors acpitz-virtual-0 | grep '^temp1:' | sed 's/^temp1: *//;s/ .*//') $ echo $cpu_temp +39.0°C