update-script脚本语法说明(根据android源代码中的recovery.c进行的定义):
1.copy_dir
语法:copy_dir
作用:将
举例:copy_dir PACKAGE:system SYSTEM:(将升级包中的system文件夹复制到手机中)
2.format
语法:format
作用:格式化一个分区
举例:format SYSTEM:(将手机/system分区完全格式化)
注意:格式化之后的数据是不可以恢复的
3.delete
语法:delete
作用:删除文件1,2到n
举例:delete SYSTEM:app/Calculator.apk(删除手机systen文件夹中app中的Calculator.apk文件)
4.delete_recursive
语法:delete_recursive
作用:删除文件或者目录,删除目录时会将目录中的所有内容全部删除
举例:delete_recursive DATA:dalvik-cache(删除/data/dalvik-cache文件夹下的所有内容)
5.run_program
语法:run_program
作用:运行终端程序
举例:run_program PACKAGE:install_busybox.sh(执行升级包中的install_busybox.sh脚本)
6.set_perm
语法:set_perm
作用:设置单个文件或目录的所有者和权限,像linux中的chmod、chown或chgrp命令一样,只是集中在了一个命令当中
举例:set_perm 0 2000 0550 SYSTEM:etc/init.goldfish.sh(设置手机system中的etc/init.goldfish.sh的用户为root,用户组为shell,所有者以及所属用户组成员可以进行读取和执行操作,其他用户无操作权限)
7.set_perm_recursive
语法:set_perm_recursive
作用:设置文件夹及文件夹中的文件的所有者和用户组
举例:set_perm_recursive 0 0 0755 0644 SYSTEM:app(设置手机system/app文件夹及其中文件的用户为root,用户组为root,app文件夹权限为所有者可以进行读、写、执行操作,其他用户可以进行读取和执行操作,其中的文件的权限为所有者可以进行读写操作,其他用户可以进行读取操作)
8.show_progress
语法:show_progress
<表示一个小部分> <表示一个小部分的持续时间>
作用:为下面进行的程序操作显示进度条,进度条会根据
举例:show_progress 0.1 0(显示进度条当操作完成后前进10%)
9.symlink
语法:symlink
作用:相当于linux中的ln命令,将
举例:symlink /system/bin/su SYSTEM:xbin/su(在手机中system中的xbin中建立一个/system/bin/su的快捷方式)
android文件系统和分区的定义方式(根据android的源代码的root.c获得):
更新部分update-script命令:
1.assert
作用:此命令用来判断表达式boolexpr的正确与否,当表达式错误时程序终止执行
※此作用有待验证
2.write_radio_image
作用:将基带部分的镜像写入手机,
举例:write_radio_image PACKAGE:radio.img
3.write_hboot_image
作用:将系统bootloader镜像写入手机,
举例:write_hboot_image PACKAGE:hboot.img
4.write_raw_image
作用:将boot.img写入手机,里面包含了内核和ram盘
举例:write_raw_image PACKAGE:boot.img BOOT:
更新手机常识理解:
system:系统分区.我们刷机一般就是刷的这个分区.
userdata:数据分区.
cache:缓存分区
recovery:Recovery分区,相当于建立在hboot与android系统间的一个中间层,如名字一般,主要用于系统调试和恢复。.
boot:存放内核和ramdisk的分区.
hboot:这个是SPL所在的分区,即 bootloader
splash1:这个就是开机第一屏幕了.
radio:这个是无线所在的分区.
misc:其他分区