在BAT文件中实现对空格分割的字符串的处理

1.      Bat代码

@echo off

REM 待处理的字符串

set str="AAA BBB CCC"

:STR_VISTOR

REM 看看每次循环后的值,便于理解

echo str = %str%

REM FOR语句是按行进行遍历,也就是一行一次循环,对于我们来说,只有一行字符串,

REM 这个FOR循环肯定只进入一次。而我们是要对字符串进行空格分割后再处理。因此这

REM 里用GOTO语句来实现循环。而FOR语句只需看成是一条语句,这条语句实现了这样的

REM 功能:将字符串分割成两一部分,一部分是第一个空格前的字串,另一部分是剩余的

REM 字串(tokens=1,*)。第一部分保存在 a 变量中,第二部分保存在 b 变量中,这

REM 个 b 是自动的。

for /f "tokens=1,*" %%a in (%str%) do (

REM 这里可以替换成自己的处理程序,现在只是简单地显示值

echo   a = %%a

REM 将剩余字符串赋值给str变量

set str="%%b"

goto STR_VISTOR

)

2.      运行后的结果

str = "AAA BBB CCC"

a = AAA

str = "BBB CCC"

a = BBB

str = "CCC"

a = CCC

str = ""

时间: 2025-01-07 16:20:23

在BAT文件中实现对空格分割的字符串的处理的相关文章

bat文件中批处理设置变量延迟的问题

在bat文件中想实现对变量的赋值和输出,发现设置的变量在后续使用中为空,代码如下: @echo off for %%i in (*) do ( set var=%%i echo %var% ) 理论上,输出结果应为当前命令所在目录里的所有文件名,可实际的输出结果 却为问题分析:这涉及到批处理命令中的变量延迟扩展问题,详细请参考:https://blog.csdn.net/subkiller/article/details/7344509解决方法: @echo off for %%i in (*)

window下批处理操作:bat文件中调用.bat和.exe文件

文件名test.bat rem 启动GTRManager.exe start cmd /k "D:\GTRManager_old\GTRECM\GTRManager.exe" ping 127.0.0.1 -n 10  rem 启动start.bat D: cd D:\v2r3c06spc100_spe_hutaf\HutafAgent start cmd /k "" call start.bat ping 127.0.0.1 -n 10  rem 启动agentW

BAT:文件中替换字符(保留空格和换行)

1 @echo off 2 rem CMD:"color --help" 3 :: setting color:back white,content blue 4 color f9 5 6 ::old string and replace string 7 set old_str=ip 8 set new_str=#ip 9 10 :FILE 11 set "souerce_path=D:\xxx\bat\my_test.txt" 12 for /f "t

bat文件中运行python脚本方法

在脚本中使用start命令: 1 @echo off 2 3 start python xxx.py 注: start命令:启动单独的“命令提示符”窗口来运行指定程序或命令.如果在没有参数的情况下使用,start 将打开第二个命令提示符窗口. 原文地址:https://www.cnblogs.com/xbook-ben/p/11713491.html

C++ 文件逐行读入 并按空格分割

#include <iostream>#include <fstream>#include <sstream> using namespace std; int main(){  ifstream in("in.txt");  string line;  while (getline(in, line))  {    stringstream ss(line);    string token;    while (ss >> token

bat文件中调用传参的问题

https://blogs.msdn.microsoft.com/twistylittlepassagesallalike/2011/04/23/everyone-quotes-command-line-arguments-the-wrong-way/ Conclusion In general, we can safely pass arbitrary command line arguments to programs, provided we take a few basic precau

window批处理——bat文件的编写

BAT 批处理脚本 教程 第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程.了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BAT!"pause把上面的3条命令保存为文件test.bat或者test.cmd然后执行,他就会在屏幕

bat批处理中怎样用while循环

bat 常用命令 echo.@.call.pause.rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起. ==== 注 =========== 首先, @ 不是一个命令, 而是DOS 批处理的一个特殊标记符, 仅用于屏蔽命令行回显. 下面是DOS命令行或批处理中可能会见到的一些特殊标记符: CR(0D) 命令行结束符 Escape(1B) ANSI转义字符引导符 Space(20) 常用的参数界定符 Tab(09) ; = 不常用的参数界定符  + COPY命

使用sqlldr将文件中的数据导入到数据库

1.创建数据文件: ?如,在D:\创建 zhaozhenlong.txt 文件,文件内容为: 11,12,1321,22,2331,32,33 2.创建控制文件: 如,在D:\创建 zhaozhenlong.ctl 文件,文件内容为: load da tainfile 'd:\zhaozhenlong.txt'append into table zhaozhenlongfields terminated by ','(c1,c2,c3) 3.在数据库中创建表: create table zhao