DOS批处理脚本入门与实战技巧
1. DOS脚本基础入门从零开始掌握批处理编程在Windows操作系统中DOS批处理脚本.bat文件至今仍是系统管理和自动化任务的重要工具。虽然图形界面日益完善但掌握DOS脚本能让你在文件管理、系统维护等方面事半功倍。我使用DOS脚本已有十余年今天就来分享这套实用技能。1.1 DOS脚本能做什么DOS批处理文件本质上是包含一系列DOS命令的文本文件扩展名为.bat或.cmd。当执行时命令解释器通常是cmd.exe会逐行读取并执行这些命令。典型应用场景包括自动化重复性文件操作批量重命名、备份等简化复杂系统管理任务创建简单的安装程序定期执行系统维护快速配置开发环境提示在Windows 10/11中虽然PowerShell已成为主流但DOS批处理仍然完全兼容且启动更快、资源占用更低。1.2 创建你的第一个脚本打开记事本输入以下内容echo off echo 这是我的第一个DOS脚本 pause保存为hello.bat双击运行即可看到效果。这里echo off禁止显示命令本身echo输出文本内容pause暂停等待用户按键2. DOS脚本核心语法详解2.1 基本命令与变量常用基础命令rem 这是注释 set varvalue # 定义变量 echo %var% # 使用变量 set /p input请输入: # 接收用户输入变量操作示例echo off set name张三 echo 你好, %name%! set /a num11 # 数学运算 echo 11%num%2.2 流程控制结构条件判断if %var%value ( echo 变量等于value ) else ( echo 变量不等于value ) if exist file.txt ( echo 文件存在 )循环结构for %%i in (*.txt) do ( echo 处理文件: %%i ) for /l %%i in (1,1,10) do ( echo 循环第%%i次 )2.3 函数定义与调用虽然DOS没有真正的函数但可以通过标签模拟echo off call :say_hello 张三 exit /b :say_hello echo 你好, %1! goto :eof3. 实用DOS脚本技巧3.1 文件批量处理批量重命名示例echo off setlocal enabledelayedexpansion set i1 for %%f in (*.jpg) do ( ren %%f image!i!.jpg set /a i1 )3.2 系统信息获取获取系统信息echo off echo 计算机名: %COMPUTERNAME% echo 用户名: %USERNAME% echo 日期: %DATE% echo 时间: %TIME% systeminfo | findstr /B /C:OS 名称3.3 网络操作基本网络命令ping www.baidu.com -n 3 ipconfig /all netstat -ano tracert www.baidu.com4. 高级技巧与错误处理4.1 错误处理机制echo off dir nonexistent 2nul || ( echo 命令执行失败 exit /b 1 ) if errorlevel 1 ( echo 上一个命令返回错误代码1 )4.2 注册表操作reg add HKCU\Software\MyApp /v Setting /t REG_SZ /d Value /f reg query HKCU\Software\MyApp4.3 计划任务创建定时任务schtasks /create /tn MyTask /tr C:\script.bat /sc daily /st 09:005. 实战案例自动化备份脚本echo off setlocal set BACKUP_DIRD:\Backup set SOURCE_DIRC:\Important set DATE_STR%DATE:~0,4%%DATE:~5,2%%DATE:~8,2% if not exist %BACKUP_DIR% mkdir %BACKUP_DIR% echo 正在备份 %SOURCE_DIR%... xcopy %SOURCE_DIR% %BACKUP_DIR%\%DATE_STR%\ /s /e /h /y if errorlevel 0 ( echo 备份成功完成 ) else ( echo 备份过程中出现错误 ) endlocal这个脚本实现了设置备份目录和源目录根据日期创建备份文件夹使用xcopy进行完整备份提供执行结果反馈6. 常见问题与调试技巧6.1 编码问题中文字符乱码解决方案保存脚本时选择ANSI编码或者使用chcp 65001切换为UTF-8编码6.2 变量延迟扩展当在循环或代码块中使用变量时需要启用延迟扩展setlocal enabledelayedexpansion set var1 for /l %%i in (1,1,5) do ( set /a var1 echo !var! # 使用!代替%访问变量 )6.3 调试技巧在脚本开头添加echo on查看每条命令执行使用pause分段调试重定向输出到文件script.bat log.txt 21掌握DOS脚本需要不断实践。建议从简单任务开始逐步构建复杂脚本。遇到问题时help 命令名可以查看任何命令的详细用法说明。

相关新闻

ChatGPT技术解析:从提示词工程到实际应用场景

ChatGPT技术解析:从提示词工程到实际应用场景

如果你还在把 ChatGPT 当作一个简单的聊天机器人,那可能已经错过了它最核心的价值。过去一年,从程序员到内容创作者,从学生到职场人士,越来越多人发现 ChatGPT 真正改变的不是"回答问题"的方式,而是解决问题…

2026/10/14 11:49:06 阅读更多 →
Loop Engineering:从「写 Prompt」到「设计循环」的范式跃迁

Loop Engineering:从「写 Prompt」到「设计循环」的范式跃迁

2023 年,所有人都在学 Prompt Engineering——怎么写好一条指令,让 AI 给出更好的回答。到了 2025 年,这个技能已经不够用了。 Claude Code、Codex、OpenClaw 等 AI 编程智能体的崛起,揭示了一个更深层的变化:开发者不…

2026/10/8 15:53:04 阅读更多 →
大模型代币消耗优化:从机制原理到工程实践完整指南

大模型代币消耗优化:从机制原理到工程实践完整指南

最近在优化大模型调用成本时,遇到了一个颇具讽刺性的问题:原本想通过精细化提示词设计来节省代币消耗,结果在反复调试过程中反而消耗了更多资源。这种"省着省着,窟窿等着"的经历,相信不少开发者在接触LLM AP…

2026/10/14 16:59:32 阅读更多 →

最新新闻

第一次用Bambu Studio切片:从导入模型到出件的完整上手教程

第一次用Bambu Studio切片:从导入模型到出件的完整上手教程

第一次用Bambu Studio切片:从导入模型到出件的完整上手教程 【免费下载链接】BambuStudio PC Software for BambuLab and other 3D printers 项目地址: https://gitcode.com/GitHub_Trending/ba/BambuStudio Bambu Studio 是一款面向 Bambu Lab 及其他品牌 3…

2026/10/15 6:57:51 阅读更多 →
Docker部署Mycat:实现MySQL读写分离与主从复制实战

Docker部署Mycat:实现MySQL读写分离与主从复制实战

前几天一个后端朋友跑来找我,说他们的订单库最近扛不住了:单台 MySQL 读写混跑,查询一多,CPU 直接飙到 80%,关键业务写操作被拖得特别慢。这个场景太典型了,读多写少、数据库连接动不动被慢查询占满。当时我…

2026/10/15 6:57:51 阅读更多 →
DeepSeek大模型工程化落地:本地部署、接口调用与避坑指南

DeepSeek大模型工程化落地:本地部署、接口调用与避坑指南

简介:这份PPT资料围绕DeepSeek大模型展开系统介绍与前景展望,面向对大模型技术感兴趣的学习者、AI从业者及希望了解国产大模型发展现状的技术人员。内容从大模型概念与趋势切入,依次讲解DeepSeek的模型架构、多层神经网络与模块化设计&#x…

2026/10/15 6:57:51 阅读更多 →
HarmonyOS高精图像处理与头像裁剪持久化实战

HarmonyOS高精图像处理与头像裁剪持久化实战

开了几个项目之后,我对HarmonyOS开发里“图像处理”这块算是摸出了一些门道。尤其是高精图像处理与头像裁剪持久化,这两个词听起来不复杂,但真做起来,整条链路上全是细节:解码精度怎么保证、裁剪框跟不跟手、坐标怎么映…

2026/10/15 6:57:51 阅读更多 →
Zustand状态管理中实现计算属性的最佳实践

Zustand状态管理中实现计算属性的最佳实践

1. Zustand 状态管理中的计算属性需求在 React 生态中,Zustand 因其简洁的 API 和出色的性能成为越来越受欢迎的状态管理方案。但在实际业务开发中,我们经常遇到这样的场景:某个状态值需要基于 store 中的其他状态经过计算得到。类似 Vue 中的…

2026/10/15 6:57:51 阅读更多 →
Java反射机制原理、优化与实践指南

Java反射机制原理、优化与实践指南

1. 反射机制的本质与核心价值Java反射是运行时动态获取类信息并操作类成员的能力集合。与静态编码不同,反射允许程序在编译期未知具体类的情况下,通过Class对象完成方法调用、字段存取等操作。这种能力源于JVM的类型信息保留机制——即使经过编译擦除&am…

2026/10/15 6:56:51 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →