我有一个脚本,并尝试将我的变量中的内容附加到.log文件。 我在另一篇文章中看到了(如何通过命令行将变量文本附加到文件的最后一行?),你可以使用echo"$(cat $ FILE)$ APPEND"> $ FILE来完成。 我尝试这样做,它能够无错误地运行我的脚本,并通过终端提供我需要的答案,但它不会将其附加到我的日志文件中。 任何人都可以给我任何指示?
#!/bin/bash
mdate=echo date
mcpu=echo $[100-$(vmstat 1 2 |tail -1|awk ‘{print $15}’)]%
mmem=free | grep Mem | awk ‘{print $3/$2 * 100.0}’
sudo cat /dev/null > /home/daniel/systemstatus.log
echo"$(cat $systemstatus.log)$mdate">> $systemstatus.log
echo"$(cat $systemstatus.log)$mcpu">> $systemstatus.log
echo"$(cat $systemstatus.log)$mmem">> $systemstatus.log
您的代码需要多次修改,您无法按照您尝试的方式使用命令输出分配变量,您需要使用命令替换(var=$(command)):
mdate=$(date)
mcpu=$(( 100 - $(vmstat 1 2 | tail -1| awk '{print $15}') ))
mmem=$(free | grep Mem