当前位置:首页 > 技术教程 > 正文

Windows命令行脚本编写

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

系统常识

批处理对命令格式很敏感,比如多一个空格少一个空格都影响很大

当你学习的时候,发现一模一样的批处理命令运行不了,一般就是细节不会,比如

in(*.*)不合法in (*.*)合法

延迟扩展

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

@echo

off

set

a=

4set

a=

5

&

echo%a%

// 这里输出

4

,因为运行到这条语句时,a采用上一条语句运行完的值

pause

关闭延迟

@echo

off

setlocal

enabledelayedexpansion // 写上该语句

set

a=

4set

a=

5

&

echo!a!

// 同时,采用

!a!

,

%a%

保持延迟

pause

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

@echo

off

setlocal

enabledelayedexpansion

for

/l

%%iin

(

1

,

1

,

5

)

do

(

set

a=

%%iecho!a!

)

pause

@

echo

off // 这样也可以,因为

for

中的i是不延迟的

for

/l

%%iin

(

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

Windows命令行脚本编写 第1张

Windows命令行脚本编写 第2张

echo

. 换行

echo%PATH%

输出环境变量

echo%DATE%echo%RANDOM%

输出一个随机数

echo%TIME%echo%num%

set

Windows命令行脚本编写 第3张

set

/p

num

=

input

a

number

: // 注意,

num

=

"string"

等号之间不能有空格,否则解析失败

set

/p

num

= <

1.

txt

bat的格式要求很严格

100i=0i∑i=0100i

@echo

off

set

/a sum =

0for

/l

%%kin

(

1

,

1

,

100

)

do

(

set

/a sum +=

%%kecho%%k

)

echo%sum%pause

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

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

选购地址:kufanyun.com/host/

0