Windows命令行脚本编写

今天给小伙伴说一下Windows命令行脚本编写,让大家再使用中提高工作效率。

Windows命令行脚本编写

系统常识

批处理对命令格式很敏感,比如多一个空格少一个空格都影响很大
当你学习的时候,发现一模一样的批处理命令运行不了,一般就是细节不会,比如
in(*.*)不合法 in (*.*)合法

延迟扩展
执行完一条语句,才对变量重新赋值

@echo off 
set a=4 
set a=5&echo %a%    // 这里输出 4,因为运行到这条语句时,a采用上一条语句运行完的值
pause

关闭延迟

@echo off 
setlocal enabledelayedexpansion   // 写上该语句
set a=4 
set a=5&echo !a!                  // 同时,采用 !a! ,%a%保持延迟
pause

强化实践,输出1 2 3 4 5

@echo off 
setlocal enabledelayedexpansion 
for /l %%i in (1,1,5) do (
set a=%%i 
echo !a!) 
pause

@echo off            // 这样也可以,因为for中的i是不延迟的
for /l %%i in (1,1,5) do ( 
echo %%i) 
pause

con 屏幕
nul 空设备
prn 打印机
>> 产生的内容将追加进文件中
> 则将原文件内容覆盖
< 输入重定向
<<代表当前标准输入来自命令行的一对分隔号的中间内容
&  顺序执行多条命令,而不管命令是否执行成功
&& 顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令
|| 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令(即:只有前面命令执行错误时才执行后面命令)
|  管道命令 前一个命令的执行结果输出到后一个命令 如:help|more

字符串操作

https://zhuanlan.zhihu.com/p/421422830

for

新建

md hello 新建文件夹
echo=>1.txt 新建文件
cd .. 返回上层目录
dir 显示所有文件,
dir /b>test.xls 会生成一个xls文件,里面存了当前目录所有文件名
dir /b>show.txt
ren 1.txt 2.txt 改名字
for %I in (ABC) do echo %I
for %i in (*3.txt) do echo %i
for %i in (*.*) do echo %i

例子

echo

echo.  换行
echo %PATH% 输出环境变量
echo %DATE% 
echo %RANDOM% 输出一个随机数
echo %TIME%
echo %num%

set

set /p num=input a number:   // 注意,num="string"等号之间不能有空格,否则解析失败
set /p num= < 1.txt 

bat的格式要求很严格
∑100i=0i∑i=0100i

@echo off
set /a sum = 0
for /l %%k in (1,1,100)  do (
set /a sum += %%k
echo %%k
)
echo %sum%
pause

读入一个数,输出该数字对应的字母

以上就是关于“Windows命令行脚本编写”的相关解答如需购买测试PHP主机,推荐酷番云共享虚拟主机、独享IP虚拟主机齐备,各类配置均有,满足不同网站建设需求;另外提供免费虚拟主机,可供测试,让您快速上线网站。

选购地址:kufanyun.com/host/

图片来源于AI模型,如侵权请联系管理员。作者:路飞,如若转载,请注明出处:https://www.kufanyun.com/ask/1115.html

赞 (0)
上一篇 2021年10月13日 15:53
下一篇 2021年10月16日 16:19

相关推荐

  • aspnet数据库教程中,如何高效掌握数据库操作技巧与最佳实践?

    ASP.NET数据库教程ASP.NET是一个强大的Web开发框架,它允许开发者创建动态的、交互式的Web应用程序,数据库是这些应用程序的核心组成部分,用于存储和检索数据,本教程将介绍如何使用ASP.NET与数据库进行交互,包括连接数据库、执行查询、插入、更新和删除数据,第1部分:环境准备在开始之前,确保你的计算……

    2025年12月15日
    02880
  • asp.net C如何手动高效回收内存,避免内存泄漏的最佳实践是?

    在ASP.NET开发中,C#是一种常用的编程语言,随着应用程序的运行,内存的使用也会逐渐增加,为了保持应用程序的稳定性和性能,适时地回收内存变得尤为重要,以下是在ASP.NET中,使用C#手动回收内存的方法和技巧,理解内存回收机制在C#中,内存回收主要依赖于垃圾回收器(Garbage Collector, GC……

    2025年12月24日
    03210
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 百度CDN价格一个月具体是多少?性价比如何?不同套餐有何差异?

    百度CDN价格一个月:全面解析与优化建议百度CDN简介百度CDN(内容分发网络)是百度云提供的一项高性能、高可靠性的网络加速服务,通过将网站内容分发到全球多个节点,百度CDN能够实现快速、稳定的访问体验,降低网络延迟,提高用户满意度,百度CDN价格体系价格组成百度CDN价格主要由以下几部分组成:(1)带宽费用……

    2025年11月7日
    04590
  • 个体户能用云原生边缘计算吗?云原生边缘计算是什么

    个体户选择云原生边缘文档服务,核心结论是:利用Serverless架构实现“零运维、按量付费、全球低延迟”,适合预算有限但需高并发访问的小型团队,2026年主流方案月成本可控制在50元以内,为什么个体户需要云原生边缘文档?在2026年的数字化环境下,个体户面临的核心痛点不再是“有没有技术”,而是“如何低成本维持……

    2026年5月16日
    02983

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注