Windows批处理:bat文件学习

目录

  • 第一章、快速了解Windows批处理
    • 1.1)Windows批处理相关概念介绍
      • 1.1.1)批处理的起源
      • 1.1.2)bat文件介绍
    • 1.2)Demo
      • 1.2.1)创建文件添加命令
      • 1.2.2)bat脚本中的命令解释
  • 第二章、实例
    • 2.1)点击bat文件,批量备份文件
      • 2.1.1)定期将重要文件复制到备份目录,以防止数据丢失。
      • 2.1.2)命令解释
    • 2.2)点击bat文件,批量修改文件名称
      • 2.2.1)D盘times下文件名中添加统一日期前缀
      • 2.2.2)命令解释
      • 2.2.3)D盘times下文件名中批量删除特定的字符
      • 2.2.4)命令解释
    • 2.3)点击bat文件,自动清理临时文件:
    • 2.4)自动化测试和部署
  • 第三章、批处理文件中的命令集合
    • 3.1)常用命令
    • 3.2)不常用命令
    • 3.3)其他命令

友情提醒:

先看文章目录,大致了解文章知识点结构,点击文章目录可直接跳转到文章指定位置。

第一章、快速了解Windows批处理

1.1)Windows批处理相关概念介绍

1.1.1)批处理的起源

①批处理(Batch),也称为批处理脚本。在计算机系统还是DOS(磁盘操作系统是一种早期的命令行操作系统)时期时被大量使用,用来对某对象进行批量的处理,通常被认为是一种简化的脚本语言,现在它应用于DOS和Windows系统中。批处理文件的扩展名为.bat(即是batch的缩写)简称 BAT文件 。

②在Windows NT以后的平台中,还加入了以.cmd为扩展名的批处理文件,其性能比.bat文件更加优越,执行也与.bat文件一样方便快捷。

1.1.2)bat文件介绍

bat文件介绍
批处理文件通常使用 .bat 或 .cmd 扩展名,并且可以包含用于执行各种任务的命令,例如文件操作、系统管理和自动化任务。Windows批处理文件可以通过文本编辑器创建,并且可以在命令提示符窗口中运行。这些命令在双击文件时按顺序执行。

解决了什么问题
Windows批处理文件解决了许多自动化任务和系统管理问题。它们允许用户编写一系列命令,在双击文件时自动执行这些命令。这样可以简化重复性任务的执行,提高效率,简化复杂任务的执行,从而减少人为错误。

1.2)Demo

1.2.1)创建文件添加命令

①创建一个扩展名为 .bat 的文件
创建echo.bat文件
在这里插入图片描述
②使用记事本/文本文档方式打开,在其中添加以下命令:

@echo off
echo helloworld
pause

在这里插入图片描述
③双击bat文件
在这里插入图片描述

1.2.2)bat脚本中的命令解释

rem命令是用来添加注释的
@echo off 命令用于关闭命令提示符窗口中的命令回显。
echo helloworld 用于在控制台打印 “helloworld”。
pause 命令用于暂停控制台,以便你可以看到 “helloworld” 的输出。
双击运行,将在控制台中看到 “helloworld” 的输出。

第二章、实例

2.1)点击bat文件,批量备份文件

2.1.1)定期将重要文件复制到备份目录,以防止数据丢失。

在filebak.bat文件中加入以下命令:

@echo off
set source=E:\test.doc
set destination=D:\Backupxcopy %source% %destination% /E /C /H /R /Y

2.1.2)命令解释

@echo off:关闭批处理文件的命令回显,这样在执行过程中不会显示每个命令的详细信息。

set source=E:\test.doc:设置一个名为source的变量,其值为E:\test.doc,这是想要备份的重要文件的路径。

set destination=D:\Backup:设置一个名为destination的变量,其值为D:\Backup,这是想要将文件备份到的目标目录路径。

xcopy %source% %destination% /E /C /H /R /Y:这是实际执行文件复制的命令。

xcopy:用于复制文件和目录的命令。
%source%和%destination%:之前设置的变量

/E表示复制目录和子目录,/C表示继续复制,即使出现错误,
/H表示复制隐藏文件,/R表示覆盖只读文件,
/Y表示在不提示的情况下覆盖现有文件。

2.2)点击bat文件,批量修改文件名称

2.2.1)D盘times下文件名中添加统一日期前缀

添加前文件名称如下:
在这里插入图片描述
timeformat.bat文件中添加如下命令,并执行bat文件

@echo off
setlocal enabledelayedexpansioncd /d D:\timesfor %%F in (*) do (set "filename=%%~nF"set "extension=%%~xF"set "datestamp=!date:~0,4!!date:~5,2!!date:~8,2!"set "names=qq"ren "%%F" "!names!-!datestamp!-!filename!!extension!"
)

执行timeformat.bat文件后:
在这里插入图片描述

2.2.2)命令解释

@echo off:关闭命令回显,这样在执行过程中不会显示每个命令的详细信息。

setlocal enabledelayedexpansion:启用延迟环境变量扩展,这允许在循环中使用!来获取变量的延迟扩展值。

cd /d D:\times:切换当前目录到D:\times。

for %%F in (*) do (...):这是一个循环命令,用于遍历当前目录中的所有文件。

set "filename=%%~nF":将文件名存储在filename变量中。

set "extension=%%~xF":将文件扩展名存储在extension变量中。

set "datestamp=":创建一个名为datestamp的变量,其中包含当前日期的格式化字符串。

!date:~0,4!:表示从当前日期中提取从第0个位置开始的4个字符,即年份部分。
!date:~5,2!:表示从当前日期中提取从第5个位置开始的2个字符,即月份部分。
!date:~8,2!:表示从当前日期中提取从第8个位置开始的2个字符,即日期部分。

ren "%%F" "!datestamp!-!filename!!extension!":使用ren命令将文件重命名为包含日期前缀的新文件名。

2.2.3)D盘times下文件名中批量删除特定的字符

删除前:
在这里插入图片描述
deleteFileName.bat文件中添加如下命令,并执行bat文件

@echo offsetlocal enabledelayedexpansioncd /d D:\timesrem 设置要删除的指定字符
set "char=extension"for %%F in (*) do (set "filename=%%~nF"set "extension=%%~xF"rem 删除文件名中的指定字符set "newname=!filename:%char%=!"ren "%%F" "!newname!!extension!"
)echo 文件名中的指定字符统一删除完成。

执行deleteFileName.bat文件后

在这里插入图片描述

2.2.4)命令解释

set "char=extension":设置要删除的指定字符为"extension"。这里的"extension"是一个示例,你可以将其替换为你想要删除的具体字符内容。

for %%F in (*) do (...):遍历当前目录下的所有文件。

set "filename=%%~nF":获取文件名部分并赋值给变量filename。

set "extension=%%~xF":获取文件扩展名部分并赋值给变量extension。

set "newname=!filename:%char%=!":使用延迟变量扩展,将文件名中的指定字符(在这里是"extension")替换为空,得到新的文件名并赋值给变量newname。

ren "%%F" "!newname!!extension!":使用ren命令将文件重命名为新的文件名。

2.3)点击bat文件,自动清理临时文件:

用于定期清理系统中的临时文件和缓存,以释放磁盘空间。不过感觉还是不要清理了,容易清理错重要文件

@echo off
echo 正在清理临时文件,请稍候...
rem 清理临时文件
del /q /s %temp%\*.*
rem 清理缓存
del /q /s "C:\Windows\SoftwareDistribution\Download\*.*"
echo 临时文件和缓存清理完成。

2.4)自动化测试和部署

使用批处理文件来自动化软件测试和部署过程,以节省时间和减少人为错误。
这个太复杂了,算了不学这个,了解了解得了

第三章、批处理文件中的命令集合

3.1)常用命令

项目Value
@echo off:关闭命令回显,使得在运行批处理文件时不显示每条命令的执行结果。
echo:用于在命令行中显示文本或变量的值。
set:用于设置和显示环境变量。
cd:用于改变当前目录。
dir:显示目录中的文件和子目录列表。
copy:复制文件。
del:删除文件。
ren:重命名文件。
start:启动一个新窗口来运行指定的程序或命令。
pause:暂停批处理文件的执行,等待用户按下任意键继续。
md:创建当前位置的新目录。
move:移动文件或目录到另一个目录。
exit:退出DOS控制台。

3.2)不常用命令

项目Value
assoc:将文件扩展名与文件类型关联起来,显示现有的关联,或删除关联。
chkdsk:检查磁盘是否存在问题。
choice:向用户提供选项列表。
convert:将卷从FAT16或FAT32文件系统转换为NTFS文件系统。
driverquery:显示所有已安装的设备驱动程序及其属性。
expand:从压缩的.cab文件中提取文件。
find:在文件或输入中搜索字符串,并输出匹配的行。
label:添加、设置或删除磁盘标签。
more:逐屏显示文件或文件的内容。
subst:为本地文件夹分配驱动器号,显示当前

3.3)其他命令

如果电脑安装了Java的JDK,批处理文件可以使用JDK提供的命令。

在批处理文件中,就可以使用javac命令来编译Java源文件,使用java命令来运行Java应用程序,以及其他JDK提供的命令。

REM 编译Java源文件
javac YourJavaFile.javaREM 运行Java应用程序
java YourJavaProgram

同理如果电脑安装了MySQL批处理文件可以使用MySQL提供的命令

REM 通过批处理文件运行MySQL命令
mysql -h hostname -u username -p < yourscript.sql

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/719362.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

navicat安装11.3

一、安装navicat 1、下载navicat 2、解压压缩包 3、点击exe文件 4、输入密钥&#xff1a; NAVH-WK6A-DMVK-DKW3 5、点击打开&#xff1a; 输入连接参数&#xff1a; 6、查看连接好仓库 7、 在使用navicat来编写sql语句 8、编写语句 连接不上问题&#xff0c;检查问题&#…

【Vue3】深入理解Vue中的ref属性

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

Redis 之三:Redis 的发布订阅(pub/sub)

概念介绍 Redis 发布订阅 (pub/sub) 是一种消息通信模式&#xff0c;它允许客户端之间进行异步的消息传递 Redis 客户端可以订阅任意数量的频道。 模型中的角色 在该模型中&#xff0c;有三种角色&#xff1a; 发布者&#xff08;Publisher&#xff09;&#xff1a;负责发送信…

嵌入式中7个底层数据结构分解

在编程的世界里&#xff0c;数据结构是构建信息框架的骨架。就像现实生活中的建筑需要精心设计的结构一样&#xff0c;我们的数据也需要合适的结构来保证程序的高效和稳定。今天&#xff0c;我们就像探险家一样&#xff0c;一起去探索七大数据结构的奥秘&#xff0c;并揭开它们…

光路科技:工业以太网交换机引领工业互联网新篇章

随着全球范围内工业4.0的浪潮不断涌动&#xff0c;工业互联网作为其核心驱动力&#xff0c;正引领着工业生产向智能化、网络化的崭新阶段迈进。在这一转型的浪潮中&#xff0c;光路科技凭借其卓越的工业互联设备与创新解决方案&#xff0c;正为工业互联网领域的发展注入新的活力…

Linux环境基础开发工具使用

目录 1.Linux软件包管理器yum 什么是软件包 关于 lrzsz 查看软件包 2.Linux开发工具 2.1.vim的基本概念 2.2vim的基本操作 2.3vim命令模式命令集 1.插入模式 2.从插入模式切换为命令模式 3.移动光标 4.删除文字 5.复制 6.替换 7.撤销上一次的操作 8.更改 2.4v…

[动态规划]---part1

前言 作者&#xff1a;小蜗牛向前冲 专栏&#xff1a;小蜗牛算法之路 专栏介绍&#xff1a;"蜗牛之道&#xff0c;攀登大厂高峰&#xff0c;让我们携手学习算法。在这个专栏中&#xff0c;将涵盖动态规划、贪心算法、回溯等高阶技巧&#xff0c;不定期为你奉上基础数据结构…

Linux设备模型(九) - bus/device/device_driver/class

一&#xff0c;设备驱动模型 1&#xff0c;概述 在前面写的驱动中&#xff0c;我们发现编写驱动有个固定的模式只有往里面套代码就可以了&#xff0c;它们之间的大致流程可以总结如下&#xff1a; 实现入口函数xxx_init()和卸载函数xxx_exit() 申请设备号 register_chrdev_r…

Spring源码:手写SpringDI

我们是在实现了SpringIOC的基础上&#xff0c;进行拓展&#xff0c;IOC实现源码可以查看&#xff1a;手写SpringIOC 文章目录 一、分析二、实现1、构造注入1&#xff09;分析2&#xff09;版本1BeanReferenceBeanDefinitionGenericBeanDefinitionDefaultBeanFactory1、改造构造…

ES入门六:Suggesters Api实践

都是负担在很多app上&#xff0c;当我们输入某些内容时候&#xff0c;它会立即做一些补全操作&#xff0c;如果我想实现上述的需求&#xff0c;我们就可以使用ES提供的Suggesters Api。那Suggesters是如何做到的那&#xff1f;简单来说&#xff0c;Suggesters会将输入的文本拆分…

【网站项目】167固定资产管理系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

谁才是“内卷”之王?众多洗地机品牌哪家清洁力最强?清洁最干净?

在如今快节奏的生活中&#xff0c;家庭清洁工作愈发显得繁琐而耗时。添可洗地机凭借其高效的一体化清洁功能和智能化操作&#xff0c;为现代家庭生活带来了极大的便利。面对众多款品牌洗地机型号&#xff0c;消费者不禁会问&#xff1a;哪家洗地机清洁力最强&#xff1f;在性能…

解决tomcat双击startup.bat一闪而过的问题

这种问题可能是tomcat找不到你的jdk环境配置路径 1、首先在tomcat的bin文件夹找到startup.bat 和catalina.bat两个文件 2、startup.bat用记事本打开 在末尾添加pause 3、保存修改&#xff0c;双击startup.bat如果出现这种问题&#xff0c;就是找不到jdk路径 4、用记事本打开ca…

STM32CubeMX实战教程: TIM6、TIM7 - 基本定时器

目录 一、基本定时器的作用 二、常用型号的TIM时钟频率 三、CubeMX配置 四、编写执行代码 一、基本定时器的作用 基本定时器&#xff0c;主要用于实现定时和计数功能。作用包括&#xff1a; 定时功能&#xff1a;可以产生周期性的中断&#xff0c;用于实现定时任务。例如&…

什么是Docker容器?

Docker是一种轻量级的虚拟化技术&#xff0c;同时是一个开源的应用容器运行环境搭建平台&#xff0c;可以让开发者以便捷方式打包应用到一个可移植的容器中&#xff0c;然后安装至任何运行Linux或Windows等系统的服务器上。相较于传统虚拟机&#xff0c;Docker容器提供轻量化的…

linux安装mysql5.7

linux安装mysql5.7 一、下载mysql5.7二、解压包介绍三、上传包到linux四、卸载mariadb五、安装mysql六、修改权限七、启动mysql八、使用过navicat创作不易&#xff0c;笔记不易&#xff0c;如觉不错&#xff0c;请三连&#xff0c;谢谢~~ 一、下载mysql5.7 去mysql官方下载&am…

MES系统在离散制造企业中的功能解析

随着信息技术的快速发展和制造业的转型升级&#xff0c;MES在离散制造企业中的作用日益凸显。MES系统不仅提高了生产效率和产品质量&#xff0c;还优化了资源配置&#xff0c;增强了企业的市场竞争力。 一、生产管理功能 MES系统能够实时监控生产现场的各种数据&#xff0c;包…

二叉搜索树题目:将有序数组转换为二叉搜索树

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法证明代码复杂度分析 题目 标题和出处 标题&#xff1a;将有序数组转换为二叉搜索树 出处&#xff1a;108. 将有序数组转换为二叉搜索树 难度 4 级 题目描述 要求 给定整数数组 nums \texttt{nums}…

15 easy 141. 环形链表

法1&#xff1a;快慢指针法&#xff1a; //给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 // // 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数…

Python爬虫副业真的可行吗?

首先回答你&#xff0c;是可行的&#xff0c;python爬虫能当副业&#xff0c;副业的方式比较多&#xff0c;等下我会讲几种。 那学到哪个层次可以接单呢&#xff1f;主要看你是接什么样的单&#xff0c;爬一些资料&#xff0c;视频这种简单的学一两个月就没什么问题&#xff0…