作者 | 造轮子
责编 | 伍杏玲
出品 | CSDN博客
封图 | 视觉中国
关机与重启
@echo off
at 00:00 shutdown -s -f REM 每天00:00关闭所有程序后关机。
将这行命令保存到.bat文件中,Win7系统拖动到“ 开始→程序→启动 ”目录下,Win10系统拖动到“ C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp ”路径下,每天到00点(具体时间按个人需求修改),Windows将会自动执行命令----关机。
@echo off
:: -t表示等待时间,0表示立刻重启
shutdown -r -t 0
1.3、注销
@echo off
:: -f 表示强制注销,不会提示用户
shutdown -l -f
@echo off
:: 立刻休眠计算机
shutdown -h
@echo off
::文件来源为本机e盘的work文件夹
set source=D:\ work
::目标文件夹为PC机 192.168.0.1的 backup文件夹
set dest=\\ 192.169.1.12\ backup
:: 登录远程环境
net use \\ 192.169.1.12\IPC$ "adm123" / user: "administrator"
:: 拷贝
xcopy /e /v /r /y /z % source% %dest%
\\fst1\work // 机器1上的工作文件夹
\\fst2\work // 机器2上的工作文件夹
″c:\program files\WinRAR\WinRAR.exe″ u -y -ep2 d:\ data\ data.rar @d:\ data\bak .1st
u表示更新压缩包内的文件;
-ep2表示当压缩时存储完整的文件路径;
-y表示所有的询问均回答“是”。
″ C:\ Program files\ WinRAR\ WinRAR .exe″ a -ep2 -ag ddmmyy d:\ data\ data .rar @ d\ data\ bak. 1st
批量启动程序
@echo off
echo Start Google..
start "" "C:\Program Files (x86)\Chrome\chrome.exe"
echo Start youdao..
start "" "D:\Program Files (x86)\youdao"
:: 按照上述格式,将需要打开的程序路径写在 start后的第二个参数位置即可。
:: 添加永久路由
route add 192 .168.0.0 mask 255 .255.0.0 192 .169.13.1 -p
启动文件
@echo off
set TargetDirOld=MyWork
set TargetDir=%~dp 0%date:~ 0, 4%%date:~ 5, 2%%date:~ 8, 2%_MyWork. 100
set TargetDir1=%~dp 0%date:~ 0, 4%%date:~ 5, 2%%date:~ 8, 2%MyWork. 100Bak
set LogFile=%~dp0output.txt
set deven2008= "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe"
if exist %LogFile% (
del %LogFile%
)
echo 原文件夹:%TargetDirOld% >>%LogFile%
echo 目标文件夹:%TargetDir% >>%LogFile%
echo 1、拷贝原文件
if not exist %TargetDir% (
mkdir %TargetDir%
)
if not exist %TargetDir1% (
mkdir %TargetDir1%
)
cd ..
echo 开始拷贝文件,%Date% %time%
echo 当前路径:%cd%
echo 目标为 %TargetDir% ,拷贝一份作为最终文件
xcopy / y /R /e %TargetDirOld%\*.* %TargetDir% >>%LogFile%
echo 目标为 %TargetDir% ,拷贝一份作为编译临时文件
xcopy / y /R /e %TargetDirOld%\*.* %TargetDir1% >>%LogFile%
::进入编译目录
cd %TargetDir1%
echo 当前路径 : %cd%
cd ..
echo 开始编译 %Date% %time%
call VideoPlay.bat %deven2008% %TargetDir1% %TargetDir% %LogFile%
echo 编译结束,当前路径 %cd%
echo 结束编译时间 %Date% %time%
echo
pause
@echo off
:: 接收调用者传入的参数
:: 编译器路径
set buildTarget=% 1%
:: 需要编译目录
set source=% 2%
:: 编译后拷贝路径
set target=% 3%
:: 日志路径
set logFile=% 4%
echo ===========开始编译 VideoPlay 项目===================
set current=% source%\VideoPlay\
set targetNew=%target%\VideoPlay\
pushd % current%
%buildTarget% VideoPlay.sln / rebuild "RELEASE|Win32" / out % logFile%
copy % current%\ bin\VideoPlay.exe %targetNew%\ bin\
popd
echo ===========编译完成 VideoPlay demo===================
:: 英文双冒号是注释作用,也可以用REM 后加注释内容。
@ 显示当前命令不要在控制台输出回显。如@echo off 关闭所有命令输出的回显。
set 设置变量,后续引用,需要用 %变量% 这种形式。
call 启动批处理文件,可以实现传参。传入的参数在被调用文件中以%1%、 %2%等依次接收。
pushd 切换到后面的路径下。
popd 退出切换后的路径,返回到之前的原始路径。
特别提醒:批处理文件中一段字符串中切记不能出现空格,有空格就会被解析为两段字符串。
介绍完博主的批处理文件,这里只涉及了几个简单的批处理命令,还有很多很多,比如编译完成后打包压缩发布等一系列流程,都可以使用批处理搞定。博主后续整理了常用的批处理命令,同样以思维导图的形式发出来,方便大家参考学习。
ver 在DOS窗口下显示版本信息
winver 弹出一个窗口显示版本信息(内存大小、系统版本、补丁版本、计算机名)
format 盘符 /FS:类型 格式化磁盘,类型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目录名 创建目录
replace 源文件 要替换文件的目录 替换文件
ren 原文件名 新文件名 重命名文件名
tree 以树形结构显示出目录,用参数-f 将列出第个文件夹中文件名称
type 文件名 显示文本文件的内容
more 文件名 逐屏显示输出文件
doskey 要锁定的命令=字符
doskey 要解锁命令= 为DOS提供的锁定命令(编辑命令行,重新调用win2k命令,并创建宏)。如:锁定dir命令:doskey dir=entsky (不能用doskey dir=dir);解锁:doskey dir=
taskmgr 调出任务管理器
chkdsk /F D: 检查磁盘D并显示状态报告;加参数/f并修复磁盘上的错误
tlntadmn telnt服务admn,键入tlntadmn选择 3,再选择 8,就可以更改telnet服务默认端口 23为其它任何端口
exit 退出cmd.exe程序或目前,用参数/B则是退出当前批处理脚本而不是cmd.exe
path 路径\可执行文件的文件名 为可执行文件设置一个路径。
cmd 启动一个win2K命令解释窗口。参数:/eff、/en 关闭、开启命令扩展;更我详细说明见cmd /?
regedit /s 注册表文件名 导入注册表;参数/S指安静模式导入,无任何提示;
regedit /e 注册表文件名 导出注册表
cacls 文件名 参数 显示或修改文件访问控制列表(ACL)——针对NTFS格式时。参数:/D 用户名:设定拒绝某用户访问;/P 用户名:perm 替换指定用户的访问权限;/G 用户名:perm 赋予指定用户访问权限;Perm 可以是: N 无,R 读取, W 写入, C 更改(写入),F 完全控制;例:cacls D:\test.txt /D pub 设定d:\test.txt拒绝pub用户访问。
cacls 文件名 查看文件的访问用户权限列表
REM 文本内容 在批处理文件中添加注解
netsh 查看或更改本地网络配置情况
批处理命令思维导图总结
☞Spark3.0发布了,代码拉过来,打个包,跑起来!| 附源码编译