通过bat脚本安装软件

  • 脚本编写
  • 碰到的问题
  • 其他常见操作汇总
    • 参考文献

最近公司需要对外开源一个产品,为了让外界用户尽量简单的使用该产品。打算将依赖软件采用一个脚本的方式进行快速安装。

脚本编写

这里安装的软件包括:docker, vcxsrv, nodejs 及 使用npm安装adbkit

:: 将
@echo off
:: 设置窗口大小
@mode con lines=40 cols=100
:: 设置窗口背景颜色
color AF
:: 设置标题
title "auto install tool"
:: 打印信息
echo "install begin .....">log.txt:: docker
echo.
echo docker install ......
:: wait 参数表示需要等上一个软件安装之后再进行一个软件安装,因为有时候需要依赖前一个软件,所以这个功能很有用,比如安装adbkit需要先安装nodejs,然后使用nodejs的npm安装adbkit
start /wait .\Docker_Desktop_Installer.exe
:: 根据打印日志的级别判断是否安装成功并答应相应的信息
if %errorlevel% == 0 (echo docker install successful) else echo docker install failed:: vcxsrv
echo.
echo vcxsrv install ......
start /wait .\vcxsrv-64.1.20.8.1.installer.exe
if %errorlevel% == 0 (echo vcxsrv install successful) else echo vcxsrv install failed:: nodejs
echo.
echo nodejs install ......
:: 这里安装msi文件
start /wait .\node-v14.15.0-x64.msi /l*v log.txt
if %errorlevel% == 0 (echo nodejs install successful) else echo nodejs install failed:: adbkit
echo adbkit install ......
npm install i -g adbkit
if %errorlevel% == 0 (echo adbkit install successful) else echo adbkit install failedecho "install finished">log.txt
pause

碰到的问题

1. Q:安装包的路径被截断,提示安装失败A:安装包路径中不要出现空格,否则识别会出错。 windows的脚本挺坑的
2. Q:安装nodejs之后,在使用npm安装adbkit时提示无法识别npm命令A: 安装adbkit是依赖前面安装的nodejs,而开启当前终端时是没有配置nodejs的环境变量的,即使通过当前安装脚本重新代开一个终端执行npm命令也不行,因为在当前bat脚本中打开终端属于子进程,不会去加载环境变量。解决方案时,安装完nodejs之后,在写一个使用npm安装adbkit的脚本单独运行。
4.

其他常见操作汇总

1. 查看环境变量set2. 设置系统环境变量set PATH = %PATH%;C:\Program Files\nodejs\node_modules\npm3. 调用其他bat文件start install_adbkit.bat   :: 或@call install_adbkit.bat4. 从C盘切换到D盘目录d:    :: 先到D盘cd d:\you\file\directory5. 获取执行命令的返回值:: 先通过adb devices获取设备序列好,然后将该值用于adbkit的输入for /F %%i in ('adb devices') do ( set adb_device=%%i)echo detect phone deviceid=%adb_device%start /b adbkit usb-device-to-tcp -p 7788 %adb_device%6. 查看进程信息:: 列举当前的进程、进程路径、命令行、进程ID、父进程ID、线程数,内存使用wmic process get name,executablepath,commandline,processid,parentprocessid,threadcount,workingsetsize/value:: 查询可用属性 : processid,caption,commandlinewmic process get /? :: /value显示对应列表wmic process  get caption,commandline /value:: 根据caption查询进程信息wmic process where caption="update.exe" get processid,caption,commandline /value

参考文献

http://www.360doc.com/content/19/1007/14/10519289_865323566.shtml
https://blog.csdn.net/WannaHaha/article/details/106289435
http://www.360doc.com/content/13/0311/20/1865135_270860611.shtml
https://stackoverrun.com/cn/q/6918426

windows10 通过bat脚本安装软件相关推荐

  1. win10 bat脚本设置软件的开机自启动

    @echo off start D:\XiYou\XiYou.exe echo off:关闭回显 start表示启动程序  后面指定(绝对路径)启动的程序即可 用记事本编写完后,保存文件即可 后缀名为 ...

  2. bat批量安装软件,完成最后删除文件夹里所有安装包

    @echo off color 0A ECHO. ECHO install 360zip_setup wait- start 360zip_setup.exe ECHO GO GO GO pause ...

  3. runas自动输入密码普通用户以管理员权限自动安装软件

    1.创建VBS自动输入密码以管理员权限运行安装软件脚本 Set WshShell = CreateObject("WScript.Shell") Set Fs = CreateOb ...

  4. python 3.6 盲水印脚本安装说明

    python 3.6 盲水印脚本安装说明 安装盲水印踩了不少坑,所以记录一下. 本机环境: windows10 python3.6 脚本安装地址: BlindWaterMark 下载解压即可 安装脚本 ...

  5. BAT批处理脚本实例学习(五)局域网共享批处理安装软件

    上一节实验了用U盘来批处理安装软件,但是这个方法有两个缺点: 1.需要随时随地带U盘: 2.因为U盘插在不同的PC上显示同一个盘符的可能性不大,所以每次安装都需要修改bat脚本中的盘符,非常不方便!! ...

  6. BAT批处理脚本实例学习(四)批量安装软件

    作为一名IT运维人员,需要经常性的给很多电脑安装同一批软件,每次一个一个点又太费事! 这个时候就需要批处理脚本来批量安装软件了. 网上查了很多start /wait的参数,无果,无奈,只能一个个测试, ...

  7. Window平台下的静默下载并安装软件脚本bat

    一,隐藏命令窗口 当我们运行bat脚本的时候,弹出CMD窗口.如果要隐藏窗口可以在bat脚本开头处写一下代码: @echo off if "%1" == "h" ...

  8. 编写Bat脚本调用Vecotr工具软件HexView

    Vector出品的工具软件HexView是汽车行业内有名的软件,支持增删改查S19.HEX.BIN等格式,并且具有对称.非对称加密.哈希计算.生成消息摘要.数字签名等高级功能. 而且在vector的帮 ...

  9. centos环境自动化批量安装软件脚本

    自动化安装jdk软件部署脚本 准备工作: 1.在执行脚本的服务器上生成免密码公钥: 安装expect命令 yum install -y expect ssh-keygen 三次回车 2.将jdk-7u ...

最新文章

  1. Matlab与线性代数 -- 逆矩阵
  2. 写了 5 年 Java,这些坑还是没躲过……
  3. GridSearchCV 与 RandomizedSearchCV 调参
  4. 书评 | 圈内大佬怎么看编程日历
  5. 定义c/c++全局变量/常量几种方法的区别
  6. Bug整理——$(window).height()获取到$(document).height()的问题
  7. Bootstrap HTML 编码规范之IE兼容模式
  8. Android模拟器——Windows上比较适合王者荣耀的是腾讯手游助手
  9. java私聊_【转帖】实现了视频私聊功能
  10. 手把手教你如何把本地文件传到服务器,如何映射
  11. linux中使用网易云音乐
  12. 神州计算机u盘启动,神舟台式机bios怎么设置从u盘启动
  13. BZOJ2791 Rendezvous
  14. Linux内核源码分析—从用户空间复制数据到内核空间
  15. MATLAB信号处理——信号与系统的分析基础(1)
  16. 【前端知识之webpack】Loader和Plugin都是什么,有什么区别
  17. TensorFlow batch
  18. [wayfarer]PetShop的系统架构设计
  19. Android Developers:支持不同的屏幕大小
  20. Android Crash 监控

热门文章

  1. 多因子模型水平测试题试答(因子部分)
  2. 爬取2017年底最新中国全国五级行政区划代码省市区县乡镇村MySQL数据库
  3. 关于傅立叶系数的计算公式
  4. 数学题还是计算机题啊
  5. NLP英文缩写词性含义
  6. android开发-验证邮箱输入是否合法
  7. mysql金额数字转成中文_数字金额大写转换(可以处理整数,小数,负数)
  8. 毫米波雷达ADC数据采集
  9. H5+CSS初级试题
  10. 【IPv6+燎原系列—第2期】IPv6+逐梦赛场,勇夺属于通信人的“金牌”