From 3f3eb9d23111c6c76738aafed07ee5e7ee602fdd Mon Sep 17 00:00:00 2001 From: LeoHLee <48520136+LeoHLee@users.noreply.github.com> Date: Mon, 5 Oct 2026 03:26:53 +0800 Subject: [PATCH] Update disk space checks to use POSIX compliant df MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 不加-P参数时,在Filesystem名称超过20字符时会换行,导致脚本解析出错 --- scripts/libs/core_tools.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/libs/core_tools.sh b/scripts/libs/core_tools.sh index a0ea7e7f..684ca55d 100644 --- a/scripts/libs/core_tools.sh +++ b/scripts/libs/core_tools.sh @@ -6,10 +6,10 @@ #$1=裸二进制字节数。仅当$TMPDIR在内存(tmpfs)时裸存才省RAM; #再按$BINDIR文件系统估算裸二进制落盘体积(透明压缩fs约2:1),需留有余量($raw_margin,默认8M) store_raw_worth_it(){ - case "$(df -T "$TMPDIR" 2>/dev/null | awk 'END{print $2}')" in tmpfs|ramfs) ;; *) return 1 ;; esac - rom_free=$(df -k "$BINDIR" 2>/dev/null | awk 'END{print $4}') #KB + case "$(df -P -T "$TMPDIR" 2>/dev/null | awk 'END{print $2}')" in tmpfs|ramfs) ;; *) return 1 ;; esac + rom_free=$(df -P -k "$BINDIR" 2>/dev/null | awk 'END{print $4}') #KB [ -z "$rom_free" ] && return 1 - case "$(df -T "$BINDIR" 2>/dev/null | awk 'END{print $2}')" in + case "$(df -P -T "$BINDIR" 2>/dev/null | awk 'END{print $2}')" in squashfs|ubifs|overlay|overlayfs) est=$(( ${1:-0}/1024/2 )) ;; #透明压缩,约2:1 *) est=$(( ${1:-0}/1024 )) ;; #无压缩,全量 esac