常用bat脚本

起因:

公司同时存在python2和python3的项目,经常需要切换运行,为了快速处理执行,写一个文件右键执行的python2的脚本,然后系统环境变量默认为python3

举例:

D:\softwear\dev\APKDB\python2\main.bat,其内容为

@echo off
echo %~dp1
echo %~nx1
cd /d %~dp1
C:\Python27\python.exe %~nx1
pause

解释:
%0表示main.bat本身,%1表示第1个参数,%2表示第2个参数,依此类推
在这里
cd /d %~dp1的意思就是cd /d 第一个入参的路径
~dp是变量扩充
d:既是扩充到分区号 d:
p:就是扩充到路径 \qq
dp:就是扩充到分区号路径 d:\qq

扩充变量语法详解:

 :: ~I - 删除任何引号("),扩充 %I
    :: %~fI - 将 %I 扩充到一个完全合格的路径名
    :: %~dI - 仅将 %I 扩充到一个驱动器号
    :: %~pI - 仅将 %I 扩充到一个路径
    :: %~nI - 仅将 %I 扩充到一个文件名
    :: %~xI - 仅将 %I 扩充到一个文件扩展名
    :: %~sI - 扩充的路径只含有短名
    :: %~aI - 将 %I 扩充到文件的文件属性
    :: %~tI - 将 %I 扩充到文件的日期/时间
    :: %~zI - 将 %I 扩充到文件的大小
    :: %~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充到找到的第一个完全合格的名称。如果环境变量名未被定义,或者没有找到文件,此组合键会扩充到空字符串
    :: 可以组合修饰符来得到多重结果:
    :: %~dpI - 仅将 %I 扩充到一个驱动器号和路径
    :: %~nxI - 仅将 %I 扩充到一个文件名和扩展名
    :: %~fsI - 仅将 %I 扩充到一个带有短名的完整路径名
    :: %~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充
    :: 到找到的第一个驱动器号和路径。
    :: %~ftzaI - 将 %I 扩充到类似输出线路的 DIR

Android开发常用工具

1.生成keystore

@echo off
set desk=%userprofile%\desktop
set startdate=%date:~0,10% %time:~0,8%
@echo %startdate%
set /p alias=请输入alias:
set /p keypass=请输入keypass:
set /p storepass=请输入storepass:
::set /p cn=请输入名字与姓氏:
set /p ou=请输入单位名称:
::set /p o=请输入组织名称:
::set /p l=请输入城市或区域名称:
::set /p st=请输入省份名称:
::set /p c=请输入国家名称:
set keystore=%desk%\%alias%.keystore
keytool -genkeypair -alias %alias% -keyalg RSA -keysize 4096 -sigalg SHA256withRSA -dname "ou=%ou%" -keypass %keypass% -startdate "%startdate%" -validity 9125 -storepass %storepass% -keystore %keystore%
@echo 输出路径:%keystore%
pause;
::选项细分:
::-alias– 封装在密钥库中的条目的别名。选择的值应该增强密钥库条目的可读性,尤其是当密钥库包含多个条目时。
::-keyalg– 用于生成密钥对的算法。支持的算法包括 RSA、DSA 和 EC。
::-keysize– 密钥大小(以位为单位)。美国国家标准与技术研究院 ( NIST)建议密钥大小至少为 3072 位,如果密钥将在?? 2030 年之后使用,但许多用户已采用 4096。
::-sigalg- 该值通常来自私钥的算法,但为了清楚起见,可以指定。支持的签名算法包括 SHA1withDSA、SHA256withRSA 和 SHA256withECDSA。
::-dname – 这是专有名称,也称为证书的主题。
::  CN(Common Name名字与姓氏) 
::	OU(Organization Unit组织单位名称) 
:: O(Organization组织名称) 
:: L(Locality城市或区域名称) 
:: ST(State州或省份名称) 
:: C(Country国家名称) 
::-keypass– 用于加密和解密私钥的密码。这应该与-storepass. 它可以不同,但??如果密码不同,您可能会在应用程序读取密钥库和密钥时遇到麻烦。该值不必指定,如果没有,系统会提示您输入密码。建议这样做,这样密码就不会出现在您的历史记录中。
::-startdate– 生成的证书的 not_before 值。可以分两部分指定,日期和时间。如果两个部分都指定,则必须用引号括起来。
::-validity– 以天为单位的有效期。该值将根据 not_before 值计算 not_after 值。
::-storetype– 推荐的密钥库类型包括 PKCS12 和 JKS。
::-storepass– 用于加密和解密密钥库的密码。这应该与-keypass存储在密钥库中的 on 密钥相同。该值不必指定,如果没有,系统会提示您输入密码。建议这样做,这样密码就不会出现在您的历史记录中。
::-keystore– 要生成的密钥库的文件名。
::查看秘钥库条目
::keytool -list -v -keystore C:\Android\keystore\wedobest.keystore -alias wedobest
::打印证书内容
::keytool -printcert -v -file C:\Android\keystore\wedobest.keystore

2. 安装APK

@echo off
::读取输入拖入APK的路径
SET input_path=%1
echo 开始安装:%input_path%
::开始安装
adb install -r -t %input_path%
pause
::-l 锁定该应用程序
::-r 替换已存在的应用程序,也就是说强制安装
::-t 允许测试包
::-s 把应用程序安装到sd卡上
::-d 允许进行将见状,也就是安装的比手机上带的版本低
::-g 为应用程序授予所有运行时的权限

3. aab转apks

@echo off
::设置bundletools的路径
SET bundle_tools_path="E:\\android_build\bundletool.jar"
::SET bundle_tools_path=bundletool.jar
::aab路径
SET input_path=%1
echo 原始路径:%input_path%
SET out_put1=%input_path%
SET out_put2=%out_put1:aab"=apks%
SET out_put3=%out_put2:"=%
::echo 输出路径2:%out_put2%
::echo 输出路径3:%out_put3%

::开始执行
java -jar %bundle_tools_path% build-apks --bundle=%input_path% --output=%out_put3%
echo 执行完成,输出路径:%out_put3%
pause

4. 安装apks

@echo off
::设置bundletools的路径
SET bundle_tools_path="E:SVN\pdragon\android_build\AndroidBuildTools\extra\gradle_build_setting\bundletool.jar"
::SET bundle_tools_path=bundletool.jar
::读取输入拖入APKS的路径
SET input_path=%1
echo 开始安装:%input_path%
::开始安装
java -jar %bundle_tools_path% install-apks --apks=%input_path%
java -jar %bundle_tools_path% install-apks --apks=%input_path%
pause
exit
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值