@@ -9,7 +9,7 @@ MODDIR="$MODDIR"
9
9
MODDIR_NAME=" ${MODDIR##*/ } "
10
10
tools_path=" $MODDIR /tools"
11
11
script=" ${0##*/ } "
12
- backup_version=" 202502272204 "
12
+ backup_version=" 202504241535 "
13
13
[[ $SHELL = * mt* ]] && echo " 請勿使用MT管理器拓展包環境執行,請更換系統環境" && exit 2
14
14
update_backup_settings_conf () {
15
15
echo " #0關閉音量鍵選擇 (如選項未設置,則強制使用音量鍵選擇)
192
192
if [[ ! -f $conf_path ]]; then
193
193
case $operate in
194
194
backup_media|backup|Getlist|Restore|Restore2|check_file|convert|Restore3|dumpname)
195
- if [[ $conf_path != * Backup_ * ]]; then
195
+ if [[ $conf_path != * restore_settings.conf && $conf_path = * backup_settings.conf ]]; then
196
196
update_backup_settings_conf> " $conf_path "
197
197
echo " 因腳本找不到\n$conf_path \n故重新生成默認列表\n請重新配置後重新執行腳本" && exit 0
198
198
else
199
- if [[ $conf_path = * Backup_ * ]]; then
199
+ if [[ $conf_path = * restore_settings.conf && $conf_path != * backup_settings.conf ]]; then
200
200
update_Restore_settings_conf> " $conf_path "
201
201
echo " 因腳本找不到\n$conf_path \n故重新生成默認列表\n請重新配置後重新執行腳本" && exit 0
202
202
else
209
209
. " $conf_path " & > /dev/null
210
210
case $operate in
211
211
backup_media|backup|Getlist|Restore|Restore2|check_file|convert|Restore3|dumpname)
212
- if [[ $conf_path != * Backup_ * ]]; then
212
+ if [[ $conf_path != * restore_settings.conf && $conf_path = * backup_settings.conf ]]; then
213
213
update_backup_settings_conf> " $conf_path "
214
214
else
215
- if [[ $conf_path = * Backup_ * ]]; then
215
+ if [[ $conf_path = * restore_settings.conf && $conf_path != * backup_settings.conf ]]; then
216
216
update_Restore_settings_conf> " $conf_path "
217
217
else
218
218
echo " $conf_path 配置遺失" && exit 1
219
219
fi
220
220
fi ;;
221
221
esac
222
- if [[ $Shell_LANG != " " ]]; then
223
- case $Shell_LANG in
224
- 1) LANG=" CN" ;;
225
- 0) LANG=" TW" ;;
226
- * ) echo " $conf_path Shell_LANG=$Shell_LANG 設置錯誤 正確1or0" && exit 2 ;;
227
- esac
228
- fi
229
222
LANG=" ${LANG:= " $( getprop " persist.sys.locale" ) " } "
230
223
echoRgb () {
231
224
# 轉換echo顏色提高可讀性
@@ -882,7 +875,7 @@ if [[ $path_hierarchy != "" && $Script_target_language != "" ]]; then
882
875
done
883
876
[[ -e $TMPDIR /0 ]] && rm -rf " $TMPDIR /0" && echoRgb " 轉換腳本完成,退出腳本重新執行即可使用" && exit 2
884
877
fi
885
- # 效驗選填是否正確
878
+ # 校驗選填是否正確
886
879
case $Lo in
887
880
0)
888
881
[[ $update != " " ]] && isBoolean " $update " " update" && update=" $nsx " || {
@@ -902,9 +895,13 @@ case $Lo in
902
895
} ;;
903
896
* ) echoRgb " $conf_path Lo=$Lo 填寫錯誤,正確值0 1 2" " 0" && exit 2 ;;
904
897
esac
905
- [[ $update = true ]] && json=" $( down " $Language " 2> /dev/null) " || echoRgb " 自動更新被關閉" " 0"
898
+ if [[ $update = true ]]; then
899
+ json=" $( down " $Language " 2> /dev/null) "
900
+ else
901
+ echoRgb " 自動更新被關閉" " 0"
902
+ fi
906
903
if [[ $json != " " ]]; then
907
- tag=" $( jq -r ' .tag_name' <<< " $json" ) "
904
+ tag=" $( jq -r ' .tag_name' <<< " $json" 2> /dev/null ) "
908
905
if [[ $tag != " " && $backup_version != $tag ]]; then
909
906
if [[ $( expr " $( echo " $backup_version " | tr -d " a-zA-Z" ) " \> " $( echo " $tag " | tr -d " a-zA-Z" ) " ) -eq 0 ]]; then
910
907
download=" $( jq -r ' .assets[].browser_download_url' <<< " $json" ) "
@@ -1242,11 +1239,6 @@ Backup_data() {
1242
1239
tar | Tar | TAR) tar --checkpoint-action=" ttyout=%T\r" --exclude=" Backup_" * --exclude=" ${data_path##*/ } /cache" --exclude=" ${data_path##*/ } /QQ" --exclude=" ${data_path##*/ } /Telegram" --exclude=" ${data_path##*/ } " /.* --warning=no-file-changed -cpf " $Backup_folder /$1 .tar" -C " ${data_path%/* } " " ${data_path##*/ } " ;;
1243
1240
zstd | Zstd | ZSTD) tar --checkpoint-action=" ttyout=%T\r" --exclude=" Backup_" * --exclude=" ${data_path##*/ } /cache" --exclude=" ${data_path##*/ } /QQ" --exclude=" ${data_path##*/ } /Telegram" --exclude=" ${data_path##*/ } " /.* --warning=no-file-changed -cpf - -C " ${data_path%/* } " " ${data_path##*/ } " | zstd --ultra -3 -T0 -q --priority=rt > " $Backup_folder /$1 .tar.zst" ;;
1244
1241
esac
1245
- else
1246
- case $Compression_method in
1247
- tar | Tar | TAR) tar --checkpoint-action=" ttyout=%T\r" --exclude=" Backup_" * --exclude=" ${data_path##*/ } /cache" --exclude=" ${data_path##*/ } /QQ" --exclude=" ${data_path##*/ } /Telegram" --exclude=" ${data_path##*/ } /modules" --exclude=" ${data_path##*/ } /modules_update" --exclude=" ${data_path##*/ } " /.* --warning=no-file-changed -cpf " $Backup_folder /$1 .tar" -C " ${data_path%/* } " " ${data_path##*/ } " ;;
1248
- zstd | Zstd | ZSTD) tar --checkpoint-action=" ttyout=%T\r" --exclude=" Backup_" * --exclude=" ${data_path##*/ } /cache" --exclude=" ${data_path##*/ } /QQ" --exclude=" ${data_path##*/ } /Telegram" --exclude=" ${data_path##*/ } /modules" --exclude=" ${data_path##*/ } /modules_update" --exclude=" ${data_path##*/ } " /.* --warning=no-file-changed -cpf - -C " ${data_path%/* } " " ${data_path##*/ } " | zstd --ultra -3 -T0 -q --priority=rt > " $Backup_folder /$1 .tar.zst" ;;
1249
- esac
1250
1242
fi
1251
1243
;;
1252
1244
esac
@@ -1478,7 +1470,7 @@ disable_verify() {
1478
1470
settings put global package_verifier_enable 0 2> /dev/null
1479
1471
# 未知來源
1480
1472
settings put secure install_non_market_apps 1 2> /dev/null
1481
- # 關閉play安全效驗
1473
+ # 關閉play安全校驗
1482
1474
if [[ $( settings get global package_verifier_user_consent 2> /dev/null) != -1 ]]; then
1483
1475
settings put global package_verifier_user_consent -1 2> /dev/null
1484
1476
settings put global upload_apk_enable 0 2> /dev/null
@@ -1672,12 +1664,12 @@ Validation_file() {
1672
1664
MODDIR_NAME=" ${1%/* } "
1673
1665
MODDIR_NAME=" ${MODDIR_NAME##*/ } "
1674
1666
FILE_NAME=" ${1##*/ } "
1675
- echoRgb " 效驗 $FILE_NAME "
1667
+ echoRgb " 校驗 $FILE_NAME "
1676
1668
case ${FILE_NAME##* .} in
1677
1669
zst) zstd -t " $1 " 2> /dev/null ;;
1678
1670
tar) tar -tf " $1 " & > /dev/null ;;
1679
1671
esac
1680
- echo_log " 效驗 "
1672
+ echo_log " ${FILE_NAME ##* .} 校驗 "
1681
1673
}
1682
1674
Check_archive () {
1683
1675
starttime1=" $( date -u " +%s" ) "
@@ -1688,8 +1680,8 @@ Check_archive() {
1688
1680
r=" $( find " $MODDIR " -maxdepth 2 -name " app_details.json" -type f 2> /dev/null | wc -l) "
1689
1681
find " $MODDIR " -maxdepth 2 -name " app_details.json" -type f 2> /dev/null | sort | while read ; do
1690
1682
REPLY=" ${REPLY%/* } "
1691
- echoRgb " 效驗第 $i /$r 個資料夾 剩下$(( r - i)) 個" " 3"
1692
- echoRgb " 效驗 :${REPLY##*/ } "
1683
+ echoRgb " 校驗第 $i /$r 個資料夾 剩下$(( r - i)) 個" " 3"
1684
+ echoRgb " 校驗 :${REPLY##*/ } "
1693
1685
find " $REPLY " -maxdepth 1 -name " *.tar*" -type f 2> /dev/null | sort | while read ; do
1694
1686
Validation_file " $REPLY "
1695
1687
[[ $result != 0 ]] && echo " $REPLY " >> " $error_log "
@@ -1698,7 +1690,7 @@ Check_archive() {
1698
1690
let i++ nskg++
1699
1691
done
1700
1692
endtime 1
1701
- [[ -f $error_log ]] && echoRgb " 以下為失敗的檔案\n $( cat " $error_log " ) " || echoRgb " 恭喜~~全數效驗通過 "
1693
+ [[ -f $error_log ]] && echoRgb " 以下為失敗的檔案\n $( cat " $error_log " ) " || echoRgb " 恭喜~~全數校驗通過 "
1702
1694
rm -rf " $error_log "
1703
1695
}
1704
1696
Set_screen_pause_seconds () {
@@ -1781,7 +1773,7 @@ backup)
1781
1773
zstd | Zstd | ZSTD | tar | Tar | TAR) ;;
1782
1774
* ) echoRgb " $Compression_method 為不支持的壓縮算法" " 0" && exit 2 ;;
1783
1775
esac
1784
- # 效驗選填是否正確
1776
+ # 校驗選填是否正確
1785
1777
case $Lo in
1786
1778
0)
1787
1779
[[ $Backup_Mode != " " ]] && isBoolean " $Backup_Mode " " Backup_Mode" && Backup_Mode=" $nsx " || {
@@ -2161,6 +2153,9 @@ backup)
2161
2153
if [[ $ksu != ksu ]]; then
2162
2154
echoRgb " Magisk adb"
2163
2155
Backup_data " ${REPLY##*/ } " " $REPLY "
2156
+ else
2157
+ echoRgb " KernelSU adb不支持備份" " 0"
2158
+ Set_back_0
2164
2159
fi
2165
2160
else
2166
2161
Backup_data " ${REPLY##*/ } " " $REPLY "
@@ -2219,7 +2214,7 @@ Restore|Restore2)
2219
2214
[[ $r = " " ]] && echoRgb " appList.txt包名為空或是被注釋了\n -請執行\" 重新生成應用列表.sh\" 獲取應用列表再來恢復" " 0" && exit 1
2220
2215
Backup_folder2=" $MODDIR /Media"
2221
2216
Backup_folder3=" $MODDIR /modules"
2222
- # 效驗選填是否正確
2217
+ # 校驗選填是否正確
2223
2218
case $Lo in
2224
2219
0)
2225
2220
[[ $recovery_mode != " " ]] && isBoolean " $recovery_mode " " recovery_mode" && recovery_mode=" $nsx " || {
@@ -2565,7 +2560,7 @@ Getlist)
2565
2560
case $MODDIR in
2566
2561
/storage/emulated/0/Android/* | /data/media/0/Android/* | /sdcard/Android/* ) echoRgb " 請勿在$MODDIR 內生成列表" " 0" && exit 2 ;;
2567
2562
esac
2568
- # 效驗選填是否正確
2563
+ # 校驗選填是否正確
2569
2564
isBoolean " $debug_list " " debug_list" && debug_list=" $nsx "
2570
2565
case $Lo in
2571
2566
0)
0 commit comments