Bat一键启动多个程序和命令【详细总结】

avatar
作者
筋斗云
阅读量:1

Hello!忙了好久,最近挺忙的,不知不觉已经来到星期六了,博客好久也没发文了,

恰好自己最近来开机总是手动点击启动许多服务和命令,好麻烦(懒人思想~哈哈),我就思考着windows有没有像Linux系统一样的批处理脚本,只要一键就可以启动呢?

好家伙!!搜了搜,有个bat的批处理系统,好了,说了半天的废话了,来~进入正题.

文章目录

1.bat脚本的制作

首先解释下,bat就是一个windows脚本命令执行文件

创建很简单:

新建TXT文件===> .txt改成.bat 如下图所示

新建文件

在这里插入图片描述

修改后缀

在这里插入图片描述

创建完成

在这里插入图片描述

2.bat的启动命令

这边就是本文的核心内容了,你也需要知道一些bat命令

嗯!~有的小伙伴说,先让我实现功能,让我看到一键启动效果,哪些啥命令的我后面细细看

好嘞好嘞!!,下面的这个demo就是很详细的哈!!~粘贴复制即可

bat一键启动多个应用程序脚本demo

::关闭回显 @echo off ::防止中文乱码 chcp 65001   ::设置dos窗口的命令 title 一键启动多个脚本和程序demo  ::set param1=hello ::set param2=world ::echo %param1%%param2%  ::显示当前磁盘路径命令行 echo  %cd% ::启动idea echo IDEA START start /d  "C:\soft\idea\IDEA2022\bin" idea64.exe  ::启动不同磁盘路径的bat文件 echo  VS_code rem 切换到c盘 c: cd C:\Users\AppData\Local\Programs\Microsoft VS Code start "VS_code启动" cmd /k call vs_code.bat  ::启动nacos echo  nacos rem 切换到d盘 d: cd  D:\soft\nacos\bin start "nacos"  cmd /k call nacos_start.bat  ::启动相应的jar包 echo tstJar start  d: cd  D:\projects\jar java -jar test.jar  ::也可以用exit,是直接关闭退出 pause  

解释下命令:

总纲:

属性意思
echo输出字符串 就是和java中的System.out.println()打印输出差不多
@echo off只显示打印结果
chcp 65001 防止中文乱码
title标识符,用来设置dos的标题
pausedos界面暂停关闭
rem::注释作用
cls清屏作用
start用于调用其他程序,如可执行文件*.exe
set /p 变量=提示语等dos输入命令
/k打开新窗口
/d默认这个目录当作是默认目录 和 相对路径差不多
/min启动新的最小化窗口
/max 启动新的最大化窗口
/wait 启动应用程序,并等待其结束
/b 启动应用程序时不必打开新的“命令提示符”窗口
call可以用于调用函数,也可以调用别的bat脚本
goto可用于函数跳转
goto :eof停止往下继续执行命令行
del标识符可以删除文件
copy标识符可以复制文件或者文件夹
>nul是将结果抛弃
echo: 输出字符串 就是和java中的System.out.println()打印输出差不多
@echo off:表示关闭回显 只显示打印结果 就是显示路径名和不显示路径名以及命令行详细信息(什么??听不懂我说的牛马东西???*直接看下图)

在这里插入图片描述

chcp 65001 :防止中文乱码问题

在这里插入图片描述

::或者rem:表示注释的作用 和java//双斜杠起注释的作用差不多
start "nacos" cmd /k call nacos_start.bat
/k: 表示新窗口打开
call: 表示执行.bat文件
cd:选择的作用
pause: 作用是将dos界面暂停关闭
exit: 窗口直接退出关闭
%cd% 或者 %~dp0: 打印当前路径
/b :
  • 启动应用程序时不必打开新的“命令提示符”窗口。
  • 除非应用程序启用 CTRL+C,否则将忽略 CTRL+C 操作。使用 CTRL+BREAK 中断应用程序。 ­
del标识符可以删除文件,自行测试
  • del /f :强制删除只读文件
  • del /s :从所有的目录下删除指定文件
  • del /q: 安静模式

测试用例:(摘抄哈!!)

rem=========>nul 命令意思是将结果抛弃 @echo off title this is a test   :fun_main 	set curdir=%~dp0test1\ 	dir /b %curdir%>nul 	pause 	goto :eof 	 rem===============>> 重定向符号 可以将结果输出到文件中 @echo off title this is a test   :fun_main 	set curdir=%~dp0test1\ 	dir /b %curdir%>>testaa.txt 	pause 	goto :eof   rem===============字符串删除所有空格 @echo off title this is a test   :fun_main 	set teststr=213123 hello world 	set teststr=%teststr: =% 	echo %teststr% 	pause 	goto :eof rem===============copy标识符可以复制文件或者文件夹 @echo off title this is a test   :fun_main 	copy .\test.txt .\aa\ >nul 	pause 	goto :eof rem===============del标识符可以删除文件 @echo off title this is a test   :fun_main 	del /f /s /q test.txt >nul 	pause 	goto :eof  rem===============字符串截取 @echo off title this is a test   :fun_main 	set teststr=*213123 hello world## 	echo %teststr% 	set teststr=%teststr:~1,-1% 	echo %teststr% 	pause 	goto :eof rem===============读取dos输入,这里需要用到set标识符,还有参数/p @echo off title this is a test set /p inp=请输入: echo %inp% pause rem=============== rem=============== rem=============== rem=============== rem=============== 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!