bat脚本、dos命令

news2024/11/24 4:33:30

bat脚本

bat脚本就是DOS批处理脚本,就是将一系列DOS命令按照一定顺序排列而形成的集合,运行在windows命令行环境上。这个文件的每一行都是一条DOS命令

在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe来运行该文件。

bat入门案例

cmd.exe

在windows环境下,命令行程序为cmd.exe。打开方式。快捷键[ctrl+r]——》键入cmd

接着,随便输入“www”回车,如果提示 “.......不是内部或外部命令,也不是可运行的程序或批处理文件。”

 这是因为在环境变量Path里面没有添加此程序的执行文件,我们只有把程序的bin目录添加到Path变量里面就可以了

例如:右键“我的电脑-属性-高级-环境变量-path,

然后在其变量值后面添加“;程序安装目录/bin”(注:在添加目录前必须添加“;”号,而且此分号必须是英文格式的)。


注释、echo和pause

rem 注释符,也可以用两个冒号代替(::)

:: 注释内容

echo 后加内容即输出该内容

会暂停批处理的执行并在屏幕上显示Press any key to continue…的提示,等待用户按任意键后继续

创建文件my.bat ,内容如下

:: 输出hello world
echo "hello world!"
pause

不加pause就会:双击运行批处理文件(xxx.bat),闪一下就消失

是因为批处理运bat行完成的时间很快,需要在运行完成后给添加暂停的命令

效果

@echo off(关闭所有回显功能)

my.bat ,内容改变,在最开始加上@echo off,

双击执行该bat文件,效果如下。就没有那些乱七八糟的 盘符路径命令本身呀。。。

提示:pause 改为 pause>nul

可以不显示“请按任意键继续. . .”这些字,nul相当于空文件,把这些文字隐去了。


窗口color与titile

  • title:设置控制台bat的标题
  • color:设置bat显示的背景和前景色

试着改动一下my.bat

color 02 0代表背景色,a代表字体颜色

@echo off
:: 设置窗口标题和颜色
title "bat批处理学习"
color 0a
echo "hello world!"
pause

双击执行该bat文件,效果如下

如果中文乱码,那么把bat文件的编辑改为ANSI格式


常用系统变量

%CD%  获取当前目录[盘符 + 路径]  
%PATH%  获取命令搜索路径
%DATE%  获取当前日期。
%TIME%  获得系统的当前时间
%RANDOM% 获取 0 和 32767 之间的任意十进制数字。
%ERRORLEVEL% 获取上一命令执行结果码

举例,在cmd窗口中输入 echo %CD%

系统变量在bat文件中使用,如:打印当前目录和系统临时文件夹目录。

修改bat文件如下:

@echo off
:: 设置窗口标题和颜色
title "bat批处理学习"
color 0a
echo "当前目录:"%CD%
echo "系统临时文件夹目录:"%TEMP%
pause

--------------------

假如你和我一样,也是乱码成这样。。。

 那么把bat文件的编辑改为ANSI格式就好了


set命令

set变量:变量设置值

最普通的set命令

@echo off
title "bat批处理学习"
color 0a
:: set命令测试
set name=小羽毛
:: 输出变量name的值
echo %name%
for %%i in (*.bat) do echo %%i
pause>nul

双击bat文件,执行结果 

set /p命令 ,让用户自己输入变量值

@echo off
title "bat批处理学习"
color 0a
:: set命令测试
set /p num=请输入一个数字:
echo 你输入的是:%num%
pause>nul

双击bat文件,会等待输入变量

 输入姓名之后,回车


bat基础运算

算术运算

关系运算

逻辑运算

&& 短路运算

||

bat重定向运算

Handle句柄

  • 句柄是Windows程序中的概念,本质是一个4字节无符号整数值,用来标示不同实例。
  • 句柄是系统所管理的引用标识,该标识可以被系统重新定位到一个内存地址上。

在进程的地址空间中设一张表,表里头专门保存一些编号和由这个编号对应一个地址,而由那个地址去引用实际的对象,这个编号跟那个地址在数值上没有任何规律性的联系,纯粹是个映射而已。

在Windows系统中,这个编号就叫做"句柄"。


重定向运算>和>>和<

重定向:负责将指定命令或语句所产生的输入输出请求由缺省的“控制台”转交给其它的“设备”来完成,它的启动标志是“重定向符号”(包括“>,>>,<”三个)出现在句中。

>

将命令输出写入到文件或设备(例如打印机)中,而不是写在命令提示符窗口中。

<

从文件中而不是从键盘中读入命令输入。

>>

将命令输出追加到文件末尾而不删除文件中的信息。

dir>dirlist.txt

如果 dirlist.txt 不存在,cmd.exe 将创建该文件。如果 cirlist.txt 存在,cmd.exe 将使用 dir命令的输出替换文件中的信息。

@echo off
:: if-else结构学习
title "bat批处理学习"
color 0a
:: 设置变量v
dir>dirlist.txt
type dirlist.txt
pause

使用type是查看文件内容的 


管道运算|

| 从一个命令中读取输出并将其写入另一个命令的输入中。也称作管道。


bat流程控制

批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环。

goto 命令 

流程跳转的含义是:改变默认的执行顺序,强制跳转到指定的位置执行特定的程序块。

goto [lable]  跳转到要执行的标签,在批处理中允许以“:XXX”来构建一个标号,然后用GOTO XXX跳转到标号:XXX处,然后执行标号后的命令

注意:

  • 标签名必须是常量,不能是变量
  • 标签必须单独一行,并且以冒号打头。

双击bat文件,结果如下:


if 命令

1.用“==” 判断字符串相等。

@echo off
title "bat批处理学习"
color 0a
set name=李四
::%name%是否等于"李四"
if "%name%"=="李四" (echo 你是李四) else echo 你不是李四
pause>nul

2、判断数值相等。

@echo off
title "bat批处理学习"
color 0a
set num1=15
set num2=18
:: 比较俩个数大于、等于、小于
if %num1% gtr %num2% echo %num1%大于%num2%
if %num1% EQU %num2% echo %num1%等于%num2%
if %num1% LSS %num2% echo %num1%小于%num2%
pause>nul

注意:比较运算符分为以下几种:

EQU - 等于
NEQ - 不等于
LSS - 小于
LEQ - 小于或等于
GTR - 大于
GEQ - 大于或等于

3、结合errorlevel使用

环境变量%ERRORLEVEL%包含上次执行的程序或脚本的返回码。会在执行成功时返回零,或者在执行失败时返回非零

@echo off
title "bat批处理学习"
color 0a
net user
if %ERRORLEVEL% EQU 0 echo net user 命令执行成功
pause>nul


for 命令入门使用

在批处理文件中:for %%i in (command1) do command2

for语句依次提取command1中的每一个元素,把它的值赋予形式变量i,带到do后的command2中参与命令的执行;

for语句的基本要素:

  1. for、in和do是for语句的关键字;
  2. %%i是for语句中对形式变量的引用;%%I和%%i会被认为不是同一个变量
  3. in之后,do之前的括号不能省略;
  4. command1表示字符串或变量,command2表示字符串、变量或命令语句;

for循环,后面的多个元素逗号分割(默认以空格,;三种符号分隔开)

@echo off
title "bat批处理学习"
color 0a
:: for命令测试
for %%i in (www,baidu,com) do echo %%i
pause>nul

执行结果

*.*,显示当前目录下所有的文件名 

@echo off
title "bat批处理学习"
color 0a
:: for命令测试
echo 显示当前目录下所有的文件名
for %%i in (*.*) do echo %%i
pause>nul

双击bat文件,执行结果

*.bat,显示当前目录下以.bat结尾的文件

@echo off
title "bat批处理学习"
color 0a
:: for命令测试
echo 显示当前目录下以.bat结尾的文件
for %%i in (*.bat) do echo %%i
pause>nul

双击bat文件,执行结果


for 命令参数扩展


start命令

启动单独的“命令提示符”窗口来运行指定程序或命令。

用法:可以打开盘符、文件、文件夹、网址、程序...

start打开盘符

@echo off
title "bat批处理学习"
color 0a
:: set命令测试
start e:
pause>nul

打开时,可以指定最大化、最小化

------------------------

start打开文件夹

:: 最小化方式打开文件夹
start /min e:\PR

最小化,就是可以在任务栏找到啦

------------------------

start打开文件

:: 打开文件
start c:\aow_drv.log

---------------------

start 打开网址

:: 使用默认浏览器打开网址
start https://mp.csdn.net

---------------------

start 打开应用程序

:: 打开应用程序
start D:\tools\IntelliJ IDEA 2019.2.2\bin\idea64.exe

额,会报错。是因为路径中有空格

可以这么用双引号,这么改

:: 打开应用程序
start D:\tools\"IntelliJ IDEA 2019.2.2"\bin\idea64.exe

call命令


Dos命令

文件夹和文件

目录的查看、创建和删除

mkdir [目录名] 新建目录

如:

mkdir test

创建多级目录?

rmdir [目录名]  目录删除

如:删除刚刚新建的test目录

rmdir test

目录切换cd

只切换盘符,此时不需要cd ,直接"d:"字母大小写都可以。

格式:cd+空格+要切换的目录

结果就很尴尬了,,,为啥没切换成功呢?

 方法一:因为要先切换盘符啊

 方法二(推荐):

当然也可以在cd 和路径中间 增加一个'/d'

windows下路径分为:绝对路径和相对路径

绝对路径:在windows操作系统中凡是路径起点是盘符的都是绝对路径

相对路径:相对路径是相对于当前位置而言,以当前所在的位置作为起点。

切换到上级目录:cd ..

切换到根目录:cd \

type查看文件内容


其他

ping 命令

telnet 命令

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

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

相关文章

服务器信息收集

#Version&#xff1a;1.2 #Modify Date&#xff1a;2013-05-21 #说明&#xff1a; #该脚本可以获取计算机名,域名,IP地址,操作系统版本,CPU名称单颗CPU内核数量*CPU个数,内存大小(GB),单块磁盘大小,计算机序列号,制造商,计算机型号 #该脚本先将计算机信息输出到txt文件中&…

浅谈Gradle构建工具

一、序言 常见的项目构建工具有Ant、Maven、Gradle&#xff0c;以往项目常见采用Maven进构建&#xff0c;但随着技术的发展&#xff0c;越来越多的项目采用Gradle进行构建&#xff0c;例如 Spring-boot。Gradle站在了Ant和Maven构建工具的肩膀上&#xff0c;使用强大的表达式语…

千万不要乱操作了!医院机房这么做真高级

各类中心数据机房广泛分布于银行、库房、交通、电信、医院、教育等行业。系统故障和人为操作不当可能导致各种业务中断或数据丢失&#xff0c;进而影响企业业务的停滞和运行。 医院管理3大难题和挑战 01.缺乏预警、告警机制 医院在使用自动化监控系统之前&#xff0c;主要靠人…

springboot足球赛事安排球队管理系统

系统主要有球队赛程安排&#xff0c;包括比赛数据&#xff0c;球员信息&#xff0c;球员实时数据&#xff0c;球队纪念品售卖 Spring Boot 是 Spring 家族中的一个全新的框架&#xff0c;它用来简化Spring应用程序的创建和开发过程。也可以说 Spring Boot 能简化我们之前采用SS…

09——path的使用

一、path 是 svg 中最强大的图形 用于定义一个 路径所有命令均允许小写字母。大写 表示绝对定位&#xff0c;小写 表示 相对定位 &#xff08;相对于上一个结束的坐标&#xff09;d 属性中包含所有路径的点&#xff0c;可根据命令缩写 自由组合 命令 名称 …

Windows 11 反转鼠标和触摸板滚动方向

如果在使用 Windows 10 设备时不喜欢鼠标或触摸板的「下滚上移&#xff0c;上滚下移」方式&#xff0c;可以通过调整「Windows 设备」或更改注册表 2 种方式来反转滚动方向。 下面就为大家介绍详细步骤。 Windows 11反转触摸板滚动方向 要通过调整「Windows 设置」反转触摸板…

企业为什么需要一套CRM系统进行销售管理

随着市场竞争的日益激烈和消费者的日益挑剔&#xff0c;企业要想在市场中取得优势地位&#xff0c;就需要通过有效的销售管理来提高销售业绩。而CRM系统作为企业实现销售管理的最佳选择&#xff0c;越来越受到企业的重视和关注。 一、CRM系统的优势 1. 提高销售流程管理效率 C…

车载AUTOSAR和OSEK关系及网络管理的异同(NM)

AUTOSAR和OSEK关系及网络管理比较 AUTOSAR和OSEK关系及网络管理比较 AUTOSAR和OSEK关系及网络管理比较AUTOSAR与OSEK的关系AUTOSARAUTOSAR架构和标准的目标是&#xff1a;AUTOSAR架构的主要特点是&#xff1a;AUTOSAR标准有四个核心内容&#xff1a; OSEK其特点主要有以下几个方…

基于SSM+JSP的高校学生健康档案管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

【ChatGPT】ChatGPT-5 到底有多强?

目录 1、ChatGPT-5 到底有多强2、技术方向3、系统特点4、系统应用5、ChatGPT-5为什么停止训练&#xff1f; 1、ChatGPT-5 到底有多强 OpenAI 最新的自然语言处理技术 ChatGPT-5 近期发布&#xff0c;拥有过去版本的一系列升级和改进。那么&#xff0c;在 ChatGPT-4 强大的基础…

STM32 调试TM7711驱动原理图驱动代码

本文使用工程代码如下 (1条消息) STM32调试TM7711驱动原理图驱动源代码&#xff0c;参考如下博客&#xff0c;有原理图设计资源-CSDN文库 背景 项目选用TM7711&#xff0c;还是很令人吃惊的&#xff0c;主要是有如下几个理由 第一就是便宜 第二精度高 STM32的ADC精度不够…

STM32 学习笔记_8 定时器中断:输入捕获

输入捕获 输入引脚发生跳变时&#xff0c;cnt的值会被记录到ccr中&#xff0c;可以用于测量pwm信号等。配置成pwmi模式还可以同时测量频率和占空比。主从触发模式可以实现硬件全自动测量。 高级定时器和通用定时器才有的功能。 这个功能只能测数字信号&#xff0c;对于a信号…

【k8s概念】一文搞懂k8s核心概念,吐血整理~两万字~!!!

文章目录 1. k8s简介1.1 k8s概念1.2 作用/功能 2. k8s集群搭建方式3. k8s核心组件3.1 Master Node&#xff08;控制平面组件&#xff09;3.2 Worker Node 4. k8s核心概念4.1 容器4.2 工作负载——Pod4.3 Pod控制器4.3.1 ReplicationController(RC)4.3.2 ReplicaSet(RS)4.3.3 De…

四大关键举措高效管控企业税务风险

税务风险是指企业在税务管理中&#xff0c;由于涉税行为因未能正确有效地遵守税法规定&#xff0c;而导致企业出现经济损失以及企业形象受损。企业税务风险的来源主要有两方面&#xff1a;第一&#xff0c;企业的纳税行为不符合税收法律法规的规定或对相关的税务政策未能全面理…

隐私计算论文合集「多方安全计算系列」第一期

当前&#xff0c;隐私计算领域正处于快速发展的阶段&#xff0c;涌现出了许多前沿的SOTA算法和备受关注的顶会论文。为了方便社区小伙伴学习最新算法、了解隐私计算行业最新进展和应用&#xff0c;隐语开源社区在GitHub创建了Paper推荐项目awesome-PETs&#xff08;PETs即Priva…

生态伙伴 | 硬创大赛新起航!携手华强科创广场,助力硬科技创业者

01 大赛介绍 中国硬件创新创客大赛始于2015年&#xff0c;由深圳华秋电子有限公司主办&#xff0c;至今已经成功举办八届&#xff0c;赛事范围覆盖华南、华东、华北三大地区&#xff0c;超10个省市区域。 大赛影响了超过45万工程师群体&#xff0c;吸引了35000多名硬创先锋报…

markdown神器 -Typora使用教程笔记2023最新版

文章目录 前言一、下载安装包和魔法工具二、第一步 选择为所有人安装三、第二步 创建桌面快捷方式四、第四步 安装五、第五步 完成安装六、第六步 取消勾选自动更新七、第七步 将魔法文件放在安装路径的根目录八、第八步 恭喜你&#xff0c;激活完成总结魔法工具获取方式 前言 …

{嵌入式操作系统}我国为什么要自主研发国产嵌入式操作系统

嵌入式操作系统不同于传统的桌面操作系统&#xff0c;用户不能直接执行它们&#xff0c;不同于桌面操作系统的无处不在&#xff0c;嵌入式操作系统隐藏在我们的视野之外&#xff0c;很多人甚至不知道它们的存在。 什么是嵌入式操作系统&#xff0c;它与非嵌入式操作系统有何不…

整合营销和内容营销哪个好,有什么区别

如果想做自媒体运营&#xff0c;不管是品牌还是个体从业者&#xff0c;其实都要学会如何去营销。这个也分为很多种方式&#xff0c;比如整合营销和内容营销。今天&#xff0c;来和大家谈谈整合营销和内容营销哪个好&#xff0c;如何才能将他们应用好? 要想回答这个问题&#x…

Linux实操篇---常用的基本命令4(磁盘查看和分区类)

一、磁盘查看和分区类 du查看文件和目录占用的磁盘空间 du&#xff1a;disk usage 磁盘占用情况 基本语法&#xff1a; du 目录/文件 显示目录下每个字母里的磁盘使用情况选项说明&#xff1a; 选项功能-h以人们较易阅读的GBytes&#xff0c;MBytes&#xff0c;KBytes等…