.bat批处理(三):变量声明、设置、拼接、截取

文章目录

前言

在使用批处理脚本的时候我们常常会有这类需求,比如需要设置一个变量来存储数据,简化程序书写;拼接现有的内容得到新的变量;截取变量的一部分来满足我们的要求,这些需求都是我们经常需要的,接下来我们设计一个情景来实现这些需求。

内容

  • 情景设计

假设我们的批处理脚本要实现这样一个功能:从控制台接收参数,前两个参数为信息发送者,第三个参数为信息接收者,最后一个参数为信息内容,请输出所有发送者、接收者和信息内容。

  • 代码实现,新建一个文件命名为test_set.bat然后编写如下代码:
@echo off

::设置变量
SET Sender1=%1
SET Sender2=%2
SET Receiver=%3
SET Content=%4

::字符串拼接(等号前面不能有空格)
SET Sender=%Sender1%, %Sender2% 
::字符串截取
SET RealContent=%Content:~1,-1%

echo Sender = %Sender%
echo ---------------------------------/
echo Receiver = %Receiver%
echo ---------------------------------/
echo Content = %Content%
echo ---------------------------------/
echo RealContent = %RealContent%
echo ---------------------------------/

pause
  • 运行结果如下:

F:\batTool>test_set.bat tom jerry xiaoming "I miss you"
Sender = tom, jerry
---------------------------------/
Receiver = xiaoming
---------------------------------/
Content = “I miss you”
---------------------------------/
RealContent = I miss you
---------------------------------/
请按任意键继续. . .

总结

  • 这其中有几个点需要注意,首先变量设置只需要使用SET 任意变量名=所要表达的内容;
  • 变量的拼接只要把变量依次写在一起就可以,形如SET 变量=变量1变量2 内容3,字符串4,不同部分之间可以没有连接符,直接相连或者用空格。
  • 变量的截取需要使用固定的格式%变量:~a,b%,这就表示把变量从第a个字符截取到第b个字符,b可以为负数,表示从字符串后面计数,-1表示最后一个字符。
  • 关于例子中信息内容这最后一个参数,其中的双引号使我故意加的,也是非常必要的,这样可以把这句包含空格的话作为一个变量传递到批处理脚本中,如果不加双引号的话,变量Content的内容就是I了,后两个单词就被丢掉了。
  • 10
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AlbertS

常来“玩”啊~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值