@ia-ccun/idea-plugin-share 0.0.70-beta.1 → 0.0.71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
Binary file
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
# 零依赖方案: 用 split 切成 4 段, 麒麟端 cat 合并即可, 不需要 7z。
|
|
3
|
+
#
|
|
4
|
+
# 打包(本机): sh split-parts.sh pack
|
|
5
|
+
# 解包(麒麟): sh split-parts.sh unpack
|
|
6
|
+
#
|
|
7
|
+
# split 版切出来的文件是原始字节流, 合并后与源文件逐字节一致。
|
|
8
|
+
# 纯 POSIX sh 实现(无 pipefail / 数组 / nullglob / ${var:start:len}),
|
|
9
|
+
# dash / bash / zsh 都能跑。麒麟默认 /bin/sh 即 dash。
|
|
10
|
+
|
|
11
|
+
set -eu
|
|
12
|
+
|
|
13
|
+
# 默认值;可被 PART_SRC 覆盖(输出文件名跟随 src 的 basename)
|
|
14
|
+
default_name="aicode-deck_0.1.4_amd64.deb"
|
|
15
|
+
|
|
16
|
+
if [ -n "${PART_SRC:-}" ]; then
|
|
17
|
+
src="$PART_SRC"
|
|
18
|
+
else
|
|
19
|
+
src=""
|
|
20
|
+
for d in . .. ../.. ../../..; do
|
|
21
|
+
if [ -f "$d/$default_name" ]; then
|
|
22
|
+
src="$d/$default_name"
|
|
23
|
+
break
|
|
24
|
+
fi
|
|
25
|
+
done
|
|
26
|
+
src="${src:-$default_name}"
|
|
27
|
+
fi
|
|
28
|
+
|
|
29
|
+
# prefix 跟随 src 的 basename,使 PART_SRC 指向任意路径都自洽
|
|
30
|
+
prefix="${src}.part-"
|
|
31
|
+
# 4 段: ~92MB / 4 ≈ 23MB, 取 23MB (23*1024*1024)
|
|
32
|
+
chunk=$((23 * 1024 * 1024))
|
|
33
|
+
|
|
34
|
+
case "${1:-}" in
|
|
35
|
+
pack)
|
|
36
|
+
if [ ! -f "$src" ]; then
|
|
37
|
+
echo "找不到 $src" >&2
|
|
38
|
+
exit 1
|
|
39
|
+
fi
|
|
40
|
+
# POSIX sh: 无匹配时 glob 不展开,rm -f 收到字面 "prefix*",静默成功
|
|
41
|
+
rm -f "${prefix}"*
|
|
42
|
+
ls -l "$src"
|
|
43
|
+
echo
|
|
44
|
+
# 前 3 段按 chunk 切, 剩余自动进第四段
|
|
45
|
+
split -b "$chunk" -d -a 2 "$src" "$prefix"
|
|
46
|
+
ls -l "${prefix}"*
|
|
47
|
+
echo
|
|
48
|
+
echo "合并校验命令(麒麟端):"
|
|
49
|
+
echo " cat ${prefix}* > $src"
|
|
50
|
+
echo " sha256sum $src"
|
|
51
|
+
;;
|
|
52
|
+
unpack)
|
|
53
|
+
# set -- 触发 glob 展开;POSIX sh 无 nullglob,无匹配时 $# == 1 且 $1 是字面 pattern
|
|
54
|
+
set -- "${prefix}"*
|
|
55
|
+
if [ "$#" -eq 1 ] && [ ! -e "$1" ]; then
|
|
56
|
+
echo "找不到 ${prefix}* 分段文件" >&2
|
|
57
|
+
exit 1
|
|
58
|
+
fi
|
|
59
|
+
cat "$@" > "$src"
|
|
60
|
+
echo "已合并: $src"
|
|
61
|
+
if command -v sha256sum >/dev/null 2>&1; then
|
|
62
|
+
sha256sum "$src"
|
|
63
|
+
else
|
|
64
|
+
shasum -a 256 "$src"
|
|
65
|
+
fi
|
|
66
|
+
echo "期望: cccb5a3a996b3b6de9176f887824b2cf0c238f713e8efdf9cad0c1bc1b342144"
|
|
67
|
+
;;
|
|
68
|
+
*)
|
|
69
|
+
echo "用法: sh $0 pack|unpack" >&2
|
|
70
|
+
exit 1
|
|
71
|
+
;;
|
|
72
|
+
esac
|
|
Binary file
|