找回密码
 立即注册

微信扫码登录

使用验证码登录

QQ登录

只需一步,快速开始

查看: 195|回复: 9

【教程】一些实用的批处理脚本代码

[复制链接]

11

主题

48

回帖

453

积分

中级会员

积分
453
发表于 2025-2-27 22:02:08 | 显示全部楼层 |阅读模式
本帖最后由 yue-no.3 于 2025-2-27 22:03 编辑

很多时候一个脚本能解决很多问题
随便写写,用之前自己做好测试



输出文件目录树结构
  1. tree /F >list.txt
复制代码
用法:写说明文档常用,表明各种文件和目录的作用

检测中文目录
  1. @echo off
  2. for /f "delims=" %%i in ('PowerShell '%~dp0' -match '[\u4E00-\u9FFF]'') do set a=%%i

  3. if "%a%"=="True" (
  4.     echo.安装路径不允许中文路径
  5.     pause
  6.     exit
  7. )
复制代码
用法:很多人都头疼小白解压游戏乱放中文文件夹,导致游戏不能启动。用这个启动脚本可以解决很多问题,做个开始游戏.bat就行

合并二进制文件
  1. copy  /b  file1+file2+...+fileN  DestFile
复制代码
用法:玩过扩容就知道这个东西怎么用,简单实用


检测管理员
  1. @ECHO OFF

  2. Rem 创建文件路径
  3. set TempFile_Name=%SystemRoot%\System32\BatTestUACin_SysRt%Random%.batemp
  4. ::echo %TempFile_Name%

  5. Rem 写入文件
  6. ( echo "BAT Test UAC in Temp" >%TempFile_Name% ) 1>nul 2>nul

  7. Rem 判断写入是否成功
  8. if exist %TempFile_Name% (
  9. echo 正在以管理员身份运行当前批处理
  10. ) else (
  11. echo 没有以管理员身份运行当前批处理
  12. )
  13. pause

  14. Rem 删除临时文件
  15. del %TempFile_Name% 1>nul 2>nul

  16. echo 按空格键退出……
  17. pause >nul
复制代码
用法:部分安装和工具,需要管理权限,可以用此脚本提示。现在随着windows权限管理完善,很多时候已经不需要了

提取文件夹内文件名
  1. DIR *.*  /B >list.txt
复制代码
用法:批量提取文件名,可以用来填excel,来做进一步脚本。excel一拖一拽就能创建大量脚本操作,比什么都省事

监控程序执行,这个是魔兽单机的,其他一样思路
  1. @echo  off
  2. @title 启动器 - 关闭服务端先关此窗口
  3. @color A

  4. cd C:\wow_112bot
  5. set 数据库脚本="Start MySQL.bat"
  6. set 登录网关="Server\Bin64\spp-login.exe"
  7. set 世界服务器="Server\Bin64\spp-world.exe"
  8. set 世界服务器进程="spp-world.exe"

  9. echo 数据库脚本=%数据库脚本%
  10. echo 登录网关=%登录网关%
  11. echo 世界服务器=%世界服务器%
  12. echo 世界服务器进程=%世界服务器进程%

  13. echo %time:~,-3% 启动数据库…
  14. start  "数据库"  %数据库脚本%
  15. choice /t 5 /d y /n >nul

  16. echo %time:~,-3% 启动登录网关…
  17. start  "登录网关" %登录网关%

  18. echo %time:~,-3% 启动世界服务器…
  19. start  "世界服务器"  %世界服务器%

  20. echo %time:~,-3% 监控世界服务器运行…
  21. :loop
  22. choice /t 2 /d y /n >nul
  23. tasklist | find /i %世界服务器进程% > nul
  24. if "%errorlevel%"=="1" (
  25.         echo %time:~,-3% 发现世界服务器宕机
  26.         echo %time:~,-3% 重启世界服务器
  27.         start  "世界服务器"  %世界服务器%
  28. )
  29. goto loop

  30. exit
复制代码
用法:有些时候,要等待游戏结束做一些清理工作,就可以用这个脚本。或者有些前端不稳定可能崩溃,如早期的天马。或者游戏开始前后要修改分辨率刷新率什么的。很多老前端对高刷显示器支持不好,如果不提前改分辨率刷新率可能会造成启动游戏频繁黑屏,如早期的retrobat

备份文件夹
  1. @echo off

  2. ::设置要备份的文件夹
  3. set srcDir="C:\srcDir"
  4. ::设置备份文件存放文件夹
  5. set destFolder="C:\destFolder"


  6. ::设置备份文件名(以年月日时分秒命名)
  7. set name=%date:~0,4%年%date:~5,2%月%date:~8,2%日%time:~0,2%时%time:~3,2%分%time:~6,2%秒

  8. ::新建备份文件夹
  9. if not exist %destFolder%\%name% (
  10. md %destFolder%\%name%
  11. )

  12. ::开始备份,不改变文件属性,拷贝所有子文件夹,拷贝隐藏文件和文件夹
  13. xcopy %srcDir% %destFolder%\%name% /A /E /H

  14. echo %name%备份完毕!         
复制代码
用法:这东西更适合用来备份游戏存档,当然也可以用powershell来写成自动备份的检测到变化就备份,但是那个要运行环境

评分

参与人数 1金钱 +10 收起 理由
pinpointer + 10 赞一个!

查看全部评分

29

主题

395

回帖

1326

积分

金牌会员

积分
1326
发表于 2025-2-27 22:12:23 来自手机 | 显示全部楼层
高手,这是高手

153

主题

4139

回帖

9054

积分

论坛元老

独乐乐不如众乐乐,免费分享游戏光荣,贩卖游戏可耻.

积分
9054

推广达人最佳新人

发表于 2025-2-27 22:19:28 | 显示全部楼层
高手,这是超级高手,真人不露馅

0

主题

261

回帖

1074

积分

金牌会员

积分
1074
发表于 2025-2-28 00:41:22 | 显示全部楼层
进来学习一下

0

主题

1424

回帖

4707

积分

论坛元老

积分
4707
发表于 2025-2-28 05:35:42 | 显示全部楼层
学习一下
回复

使用道具 举报

1

主题

323

回帖

2118

积分

金牌会员

积分
2118
发表于 2025-2-28 08:40:09 | 显示全部楼层
... ...EMMMM   感觉经过dos年代的都会这么几手

0

主题

258

回帖

832

积分

高级会员

积分
832
发表于 2025-2-28 09:33:12 | 显示全部楼层
进来学习一下

3

主题

57

回帖

337

积分

中级会员

积分
337
发表于 2025-2-28 10:52:24 | 显示全部楼层
有段时间特别想学,甚至下了好多视频教程,等到自己模拟的时候就烦躁的不行了。

11

主题

48

回帖

453

积分

中级会员

积分
453
 楼主| 发表于 2025-2-28 11:22:00 | 显示全部楼层
w553491775 发表于 2025-2-28 10:52
有段时间特别想学,甚至下了好多视频教程,等到自己模拟的时候就烦躁的不行了。 ...

批处理是给系统工程师用的,大部分都是装机和配置网络
普通人用的只有很少的一些指令

3

主题

57

回帖

337

积分

中级会员

积分
337
发表于 2025-3-1 05:13:18 | 显示全部楼层
yue-no.3 发表于 2025-2-28 11:22
批处理是给系统工程师用的,大部分都是装机和配置网络
普通人用的只有很少的一些指令 ...

但是感觉十分强大。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|肖琪模拟游戏站 ( 沪ICP备2023018581号-5|沪公网安备31011702888952号 )

GMT+8, 2025-3-14 21:02 , Processed in 0.039930 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表