我的脚本的目标是获取 /cache 分区位置(哪个有效),然后获取该位置的块大小并将其除以 1024。然后我想输出大小,我尝试了很多可能的方法,但我不能让它正常工作。
#!/bin/bash -v
if [ -e mounts ]; then
rm -f mounts
fi;
./adb -d shell "mount" > mounts
export CACHEPARTITION=`cat mounts | grep /cache`;
var=$(echo $CACHEPARTITION | awk -F"/" '{print $1,$2,$3,$4}')
set -- $var
echo "Cache mount point: "$1/$2/$3;
export CACHEPART=$1/$2/$3
例如,这会导出:/dev/block/mmcblk0p16 到文件“mounts”
if [ -e cachepartition ]; then
rm -f cachepartition
fi;
./adb -d shell "blockdev --getsize64 '${CACHEPART}'" > cachepartition
例如: 104857600 需要除以下面的 1024
export CACHESIZE=`cat cachepartition`;
DIVIDE=1024
export OUTPUT=`expr ${CACHESIZE} / ${DIVIDE}`
echo ${OUTPUT}
我可以通过管道而不是 catting 值吗?并让它真正做除法。我在 bash 脚本方面有点菜鸟,这是我想到的最简单的方法,但对我来说仍然很难,看起来哈哈
对此的一些帮助非常感谢!