从 ps 获取内存并通过 bash 与我的限制进行比较
get memory from ps and compare via bash with my limit
我有在openwrt中使用的代码。我需要检查使用 application
的内存
#!/bin/bash
VAR=$(ps | grep sca | grep start | awk '{print }')
VAG=$(cat /proc/pid/status | grep -e ^VmSize | awk '{print }')
if [ $VAG>28000 ]
then
echo test
fi
无论我使用 VAR 还是 VEG(例如 VAR/VAG 等于 15000),我都可以使用此代码。我总是 "test"
您的 if
陈述不正确。 test
命令(又名 [
)必须为操作数和运算符接收单独的参数。此外,>
用于字符串比较;您需要改用 -gt
。
if [ "$VAG" -gt 28000 ]
由于您使用的是bash
,您可以使用更具可读性的算术命令来代替[
:
if (( VAG > 28000 ))
我有在openwrt中使用的代码。我需要检查使用 application
的内存#!/bin/bash
VAR=$(ps | grep sca | grep start | awk '{print }')
VAG=$(cat /proc/pid/status | grep -e ^VmSize | awk '{print }')
if [ $VAG>28000 ]
then
echo test
fi
无论我使用 VAR 还是 VEG(例如 VAR/VAG 等于 15000),我都可以使用此代码。我总是 "test"
您的 if
陈述不正确。 test
命令(又名 [
)必须为操作数和运算符接收单独的参数。此外,>
用于字符串比较;您需要改用 -gt
。
if [ "$VAG" -gt 28000 ]
由于您使用的是bash
,您可以使用更具可读性的算术命令来代替[
:
if (( VAG > 28000 ))