Windows命令提示行使用指南二(批处理)

news2024/11/27 18:00:00

命令提示行使用指南

  • 前言
  • 四、批处理简介
  • 五、如何编写批处理
    • 1、Hello world
    • 2、做加法
    • 3、查找文件,并输出到文本。
    • 4、批量重命名
    • 5、自动记录开机时间

前言

cmd 是 Windows 操作系统中的命令行界面(CLI),也称为命令提示符(CMD)或批处理文件。它是 Windows 命令行界面的主要组成部分,用于用户与 Windows 操作系统进行交互。

这篇博文将简要介绍入门知识,目标读者是对cmd有兴趣的想要认识一下,并用以处理一些简单工作的人。看完此文,读者应该不会在看见有人在黑黑的窗口中敲代码,就觉得对方一定是高手!本文主要介绍批处理的简单应用,短短一篇博文肯定无法介绍太多内容,仅希望能引有兴趣的读者入门。
在这里插入图片描述

四、批处理简介

批处理是一种 Windows 系统下的脚本语言,它可以用来自动化执行一系列的命令。批处理文件通常使用 .bat 或 .cmd 扩展名,它们包含了一系列的命令,这些命令可以在 Windows 命令提示符下执行。批处理文件可以用于执行诸如备份、安装软件、配置系统等任务。

与其它如python这种解释型编程语言相比,批处理语言更加简单易学,但是它的功能也更加有限。批处理语言主要用于执行简单的任务,例如复制文件、删除文件、创建目录等。而python编程语言则更加强大,可以用于开发复杂的应用程序和系统。

五、如何编写批处理

其实编写批处理程序,也就和编程差不多,随便找个文字处理工具都行。当然,为了避免编码格式的问题,我们一般会使用cmd生成bat文件,或直接用系统的记事本保存为bat格式文档。

打开 CMD 命令提示符。在 Windows 中,可以按下 Win + R 键组合,输入 cmd 并按回车键来打开 CMD 命令提示符。
创建一个新的批处理文件。可以使用 echo 命令来输出一些文本,然后使用 > 符号将其重定向到一个新的批处理文件中。例如,以下命令将输出一条消息并将其写入一个名为 example.bat 的文件中:
echo "This is a bat file." >> example.bat
这样我们就在当前目录下生成了一example.bat文件,bat后缀的文件就是windows的批处理文件。

格式说明:
1、%VAR_NAME%表示程序使用变量的名称。 @ECHO 命令输出当前光标位置。 IF [condition] 条件语句,如果条件为真,则执行一段语句。

2、注释块:正常使用 :: 或 REM 作为注释符号,这将告诉操作系统忽略接下来的所有内容。批处理还有别的注释方法,比如用goto跳过,用:标记。批处理这破玩意真不是一个正经肢本语言,实在是Windows的用户太多了,才让它有人去用。

3、设置变量:使用set关键字定义变量,例如:set my_variable=hello

4、条件语句:使用if-else结构实现条件判断,例如:if "%my_variable%"=="hello" ( echo "Hello!" ) else ( echo "Goodbye!" )

5、循环结构:使用for和do-while结构实现循环执行,例如:for /l %%i in (1,1,10) do ( echo Line %i of 10 )

6、脚本代码:使用反引号(`)包围的一系列命令或语句,这些命令或语句将被解释为Windows操作系统可执行的代码。

7、GOTO [label] 用于跳转到标签。

有了以上基本概念,就可以开始写批处理程序了,程序猿界的传统规矩要从 hello world 开始:

1、Hello world

以下是一个简单的批处理脚本示例,它将输出“Hello, world!”到控制台:

@echo off
echo Hello, world!

可以用记事本将这个脚本保存为一个批处理文件,例如hello.bat。要运行这个脚本,您需要按下Ctrl + C组合键,然后打开命令提示符(CMD)并导航(cd 命令)到保存脚本的文件夹。然后,使用以下命令运行脚本:
hello.bat
这将运行保存在hello.bat文件中的可执行文件,并输出“Hello, world!”到控制台。直接将这个文件拖入命令提示行的黑框框也行哦~

2、做加法


@echo off

set /a sum1=0
set /a sum2=10
echo Sum of numbers: %sum1% + %sum2% = %sum1% + %sum2%
pause>nul  

以上代码用于计算两个数的和并输出结果。pause>nul 等待用户按下任意键后关闭窗口,这个批处理没有任何实际意义,一般也没人用这么傻的东西,这只是为了演示,下面会介绍几个很有实用意义的批处理。

3、查找文件,并输出到文本。


@echo off
setlocal enabledelayedexpansion
for /r %%i in (*.txt) do (
  set filename=%%~ni     
rem 将当前文件名赋值给变量filename

  echo "!filename!" >> output.txt  
rem 将文件名写入output.txt文本文件中
)
pause>nul

在指定目录下查找所有扩展名为.txt的文件,并将它们的名称输出到一个文本文件中。需要注意的是,它的默认目录在不同的系统上可能不同,win10一般会在c:/Users/用户名

4、批量重命名


@echo off
setlocal enabledelayedexpansion

set "oldstring=old"
set "newstring=new"

for /f "delims=" %%i in ('dir /b /a-d') do (
    set "filename=%%i"
    set "newname=!filename:%oldstring%=%newstring%!"
    ren "!filename!" "!newname!"
)  
rem 如果没有重命名的文件,提示系统找不到指定的文件并退出。

pause>nul

批量重命名指定文件夹中的文件。将所有存在“old”的文件名更改为以“new”。其中,oldstring和newstring分别是需要被替换的字符串和替换后的字符串。你可以根据自己的需要随便改。这是一个很实用的批处理,比那些重命名软件方便太多了,而且至少不用安装一堆广告软件到系统是吧~

5、自动记录开机时间

@echo off
set "filename=example.log"
set "path=d:\"
set "current_time=%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%.%time:~3,2%.%time:~6,2%"
echo %current_time% >> %path%\%filename%

其中,example.log是您想要写入的文件名,d:\是您想要写入的路径。将代码保存为.bat文件,然后放入Windows系统的启动文件夹自动运行即可。需要注意的是,现在的Windows有权限管理问题,不要把路径设在C盘,很可能无法运行,当然你用管理员权限是可以执行的。但没必要不是吗?

*就到这里了,笔者对批处理所知也有限,只能写一点很简单的东西,批处理本身也是一种不算强大的脚本语言。虽然在Windows系统上一直没什么存在感!根据本文介绍,其实可以写一个在运行某些程序前修改系统时间,在程序启动以后自动改回来的脚本,这是不是解决了很多小问题~ 本文完 *

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

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

相关文章

Linux shell编程 数组排序算法

冒泡排序 循环对比相邻的元素,交换较大元素到后面的位置 大循环根据列表中存在的元素数量循环n-1次,保证所有元素都能被排序完成 小循环从前向后遍历,循环一次循环范围减少一位(由于后面的已经排列完成无需再比较)小循…

【halcon知识】应用仿射变换

一、说明 无论什么样的变换,都离不开齐次变换矩阵。一般地,先准备一个空的齐次变换矩阵,这个矩阵随便填写:1)填入旋转类参数就是旋转矩阵,2——填入仿射参数就可进行仿射变换,3)填入…

Kali-linux攻击WordPress和其他应用程序

今天越来越多的企业利用SAAS(Software as a Service)工具应用在他们的业务中。例如,他们经常使用WordPress作为他们网站的内容管理系统,或者在局域网中使用Drupal框架。从这些应用程序中找到漏洞,是非常有价值的。 为…

[JAVA数据结构]堆

目录 1.堆的概念 2.堆的创建 3.堆的插入与删除 3.1堆的插入 3.2堆的删除 1.堆的概念 如果有一个关键码的集合K {k0,k1, k2,…,kn-1},把它的所有元素按完全二叉树的顺序存储方式存储在一个一维数组中,…

【Linux】远程桌面连接服务器报错:未启用对服务器的远程访问......

🍁博主简介 🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 文章目录 前述操作环境说明:远程报…

<数据结构>NO4.带头双向循环链表

文章目录 前言1. 头文件2. 函数实现1)创建哨兵位节点2)新增一个节点3)打印链表4)头插5)尾插6)头删7)尾删8)查找9)pos前插入10)删除pos处节点11)销…

Redis 缓存穿透、缓存击穿与缓存雪崩

文章目录 1. 缓存穿透解决方法 2. 缓存击穿解决方法 3. 缓存雪崩解决方法 在 redis 的应用场景中,需要考虑缓存在某些场景下可能出现的问题: 缓存穿透 缓存击穿 缓存雪崩 以下缓存问题的讨论都是基于以下应用架构讨论的: 1. 缓存穿透 对应…

数据备份系列:Rsync 备份实战记录(二)

一、Rsync Cron 场景使用 在对数据备份要求实时性不高的情况下,可优先考虑该场景,选择一个合适的时间,对数据进行定时远程增量同步。 在《数据备份系列:Rsync 备份详解(一)》中我们已经对服务搭建以及远程…

DAD-DAS模型

DAD-DAS模型 文章目录 DAD-DAS模型[toc]1 产品服务:需求方程2 实际利率:费雪方程3 通货膨胀:菲利普斯方程4 预期通货膨胀:适应性预期5 货币政策规则:泰勒方程6 动态总供给-总需求方程(DAS-DAD)7 总供给冲击模拟 1 产品服务:需求方…

【JavaEE初阶】文件操作——IO

摄影分享~ 文章目录 文件文件路径(Path) 文件的类型Java中操作文件File概述 文件内容的读写——数据流字节流InputStream概述OutputStream 概述字符流FileInputStream 概述利用 Scanner 进行字符读取 实例练习 文件 文件:File这个概念&…

PostSQL内存管理之内存上下文

瀚高数据库 目录 环境 文档用途 详细信息 环境 系统平台:Linux x86-64 Red Hat Enterprise Linux 7 版本:14 文档用途 了解pg内存分配 详细信息 1.MemoryContex机制 内存上下文是pg相关的内存控制结构,树形结构组织下的内存上下文能在频繁的…

SNMPc软件的下载和安装教程,计算机网络管理,网络工程师

⬜⬜⬜ 🐰🟧🟨🟩🟦🟪(*^▽^*)欢迎光临 🟧🟨🟩🟦🟪🐰⬜⬜⬜ ✏️write in front✏️ 📝个人主页:陈丹宇jmu &am…

vue 改变数据后,数据变化页面不刷新

文章目录 导文文章重点方法一:使用this.$forceUpdate()强制刷新方法二:Vue.set(object, key, value)方法三:this.$nextTick方法四:$set方法 导文 在vue项目中,会遇到修改完数据,但是视图却没有更新的情况 v…

让开发者成为创新主体 | 阿里云云原生4月动态

作者:云原生内容小组 云原生月度动态 ✦ 云原生是企业数字创新的最短路径。 《阿里云云原生每月动态》,从趋势热点、产品新功能、服务客户、开源与开发者动态等方面,为企业提供数字化的路径与指南。 本栏目每月更新。 01 趋势热点 &…

vue - 实现登录后用户无操作后自动退出登录功能,当用户鼠标不动、键盘不动、无窗口滚动时自动清除登录状态(可自定义删减条件,详细示例源码一键复制开箱即用)

需求 很多教程都是无效而且有bug。。很难用索性自己搞了最健壮的解决方案。 在vue项目中,实现自动检测用户没有【移动鼠标】【操作键盘】【窗口滚动】时,自动清除登录信息强制退出登录下线,支持自定义触发时间(比如无操作10分钟就执行),自定义条件(比如只监听用户鼠标是…

匿名对象以及临时空间

目录 大纲 1.何为匿名对象 2.产生匿名对象的四种情况: 1)给初始化对象时 2)以值的方式给函数传参; 3)类型转换; 4)函数返回时; 3.编译器优化 I.在同一行代码的优化 II.在函…

电脑关机很慢怎么办?这5个方法很有用!

案例:电脑关机很慢怎么办? 【我的电脑才买来不久,现在每次关机都很慢,有时甚至一直在转圈圈无法关机,怎么处理这种情况呢?】 如果使用电脑时间长了,我们可能会发现电脑的各项性能都会有所下降…

Vue3(5)插槽Slots

目录 一、插槽内容与出口 二、渲染作用域 三、默认内容 四、具名插槽 五、作用域插槽 六、具名作用域插槽 一、插槽内容与出口 在之前的博文中,我们已经了解到组件能够接收任意类型的JS值作为props,但组件要如何接收模板内容呢?在某些…

图片堆叠、多重聚焦的几种办法

当拍摄的物品较小,景深较深时,相机的焦点只能放在较近或者较远的一处,图片的整个画面就不能保证完全清晰,多重聚焦的原理其实就是拼合,在画幅的不同处拍摄聚焦图片,将各个聚焦的内容拼合在一起,…

杂记 2023.5.11

目录 come across(as).. 与异性对话经验和理论、策略 单词记忆 机器学习 come across(as).. 这个用法在口语里超级高频,表示「给人.印象,让人觉得..」,s后面可跟名词、形容词、 being形容词。 我们再来看几个例子: ◆He comes ac…