bat 批处理 字符串 截取
由于项目中配置项太多,经常有同事在配置xml的时候,讲 配置的路径搞错,先需要搞一个脚本,可以自动将路径截取出来,
晚上收集了点资料,暂时先上几个 bat
后面留着 ,具体实现。
@echo off
set var=
rem ************循环开始了
:continue
set /a var+=
echo 第%var%次循环
if %var% lss goto continue
rem ************循环结束了
echo 循环执行完毕
pause
@echo off
set filePath=D:\Program Files\VMware\vmware.exe
::有/P参数时,是需要手动输入,去掉后,即为固定。
for %%a in ("%filepath%") do (
set str=%%~pda
set var=%%~nxa
)
echo.路径为:%str%
echo.文件为:%var%
pause
::code by lxmxn @ cn-dos.net .
::目的:帮助新手们更好的理解变量字符截取功能.
::Date -- .
::说明:有的变量截取之后值为空,这是正常的.
::
@echo off&setlocal EnableDelayedexpansion
::设置变量var的值:
set var=0123456789ABCDEF
call :begin
for /l %%a in (,,) do (
for /l %%b in (,,) do (
call :printf %%a %%b
)
)
call :begin
for /l %%a in (,,) do (
for /l %%b in (-,-,-) do (
call :printf %%a %%b
)
)
call :begin
for /l %%a in (-,-,-) do (
for /l %%b in (,,) do (
call :printf %%a %%b
)
)
call :begin
for /l %%a in (-,-,-) do (
for /l %%b in (-,-,-) do (
call :printf %%a %%b
)
)
pause
endlocal&cls&echo.
echo 演示结束了,任意键退出……
pause>nul
goto :eof ::输出结果:
:printf
echo %%var:~%,%%% 截取之后的字符为: !var:~%,%!
goto :eof ::清理屏幕:
:begin
echo\&pause&cls&echo.
echo 变量var的值为: %var%
echo.
goto :eof
@echo off
set str=
rem 定义一个str字符串为123456789
echo 第一个字符为:%str:~,%
rem 指针为0,偏移地址为1,即从第0位开始,取1位
echo 头两个字符为:%str:~,%
rem 指针为0,偏移地址为2,即从第0位开始,取2位
echo 头5个字符为:%str:~,%
rem 指针为0,偏移地址为5,即从第0位开始,取5位
echo 去掉最后一个字符后的字符串为:%str:~,-%
rem 当"k"为负值时,我们可以这样理解:从指针开始处开始取其后面所有字符,然后减去后面"abs(k)位"..所以这个句字我们可以做如下解释:从第0位开始取其全部字符
为:123456789然后从后面减去abs(k)位,所以最后结果为:
echo 去掉最后3个字符后的字符串为:%str:~,-%
rem 该句解释同上↑
echo 最后一个字符为:%str:~-%
rem 参数"n,"和"k"都可以为缺省,缺省"n,"时可以理解为:从abs(k)位开始取其全部
echo 倒数第4个及其之后的字符为:%str:~-%
rem 解释同上↑
echo 最后一个字符为:%str:~-,%
rem n为负值时,表示从后面开始截取字符,取k位(此时n应从1开始数)
echo 最后一个字符为:%str:~-,%
rem 解释同上↑
echo 倒数第4个字符为:%str:~-,%
rem 解释同上↑
echo 倒数第4个及其之后的1个字符为:%str:~-,%
rem 解释同上↑
echo 倒数第4个及其之后的2个字符为:%str:~-,%
rem 解释同上↑
pause
for /f "eol=- tokens=2 delims= " %%i in (result.txt) do echo %%i>>s2.txt
bat 批处理 字符串 截取的更多相关文章
- BAT批处理中的字符串处理详解(字符串截取)
BAT批处理中的字符串处理详解(字符串截取) BAT批处理中的字符串处理详解(字符串截取 批处理有着具有非常强大的字符串处理能力,其功能绝不低于C语言里面的字符串函数集.批处理中可实现的字符串处理 ...
- 【转】BAT批处理中的字符串处理详解(字符串截取)
下面对这些功能一一进行讲解. 1.截取字符串 截取字符串可以说是字符串处理功能中最常用的一个子功能了,能够实现截取字符串中的特定位置的一个或多个字符.举例说明其基本功能: @echo off set ...
- 【转】BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在 ...
- 【工作笔记】BAT批处理学习笔记与示例
BAT批处理学习笔记 一.批注里定义:批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD,这些命令统称批处理命令. 二.常见的批处理指令: 命令清单: 1.RE ...
- BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以 ...
- .bat批处理命令的介绍
HUC = = D组 http://www.cnhonkerarmy.com/ 63707869 =====================================开始============ ...
- 【转载】BAT 批处理脚本教程
来源:http://www.cnblogs.com/glaivelee/archive/2009/10/07/1578737.html BAT 批处理脚本 教程 第一章 批处理基础第一节 常用批处 ...
- [转]BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以 ...
- BAT 批处理脚本教程
第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以 ...
随机推荐
- 不能将“const char [7]”转换为“LPCTSTR”
試試用強制轉換變數型態的方法吧,像這樣(LPCTSTR)"WinSun",若不行再試L"WinSun",再不行試_L"WinSun".
- 要成为开发中最牛逼的测试,测试中最牛逼的开发。从今天起学python,写博客。--python基础学习(一)
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32Type & ...
- 针对目前高校移动App的火热,哥决定点一把火
最近正在做市场调研,还请众位大哥大姐们帮忙投个票,求扩散 http://user.qzone.qq.com/717010686/vote/00000000feb6bc2a3ebd1e53
- 2014年度辛星css教程夏季版第五节
本小节我们讲解css中的”盒模型“,即”box model“,它通常用于在布局的时候使用,这个”盒模型“也有人成为”框模型“,其实原理都一样,它的大致原理是这样的,它把一个HTML元素分为了这么几个部 ...
- Javascript事件传播
MicroSoft的设计是当事件在元素上触发时,该事件将接着在该节点的父节点触发,以此类推,事件一直沿着DOM树向上传播,直到到达顶层对象document元素.这种自底向上的事件传播方式称为" ...
- Python 学习日志(一)
第一天: (一)安装Python3.3: (二)试运行: 1.在IDLE中输入:print("Hello,world"); //回车查看结果 2.使用"File" ...
- A Full Hardware Guide to Deep Learning
A Full Hardware Guide to Deep Learning Deep Learning is very computationally intensive, so you will ...
- C++ new operator, delete operator, operator new, operator delete, new placement
http://www.younfor.com/cpp-new-placement-new-operator-new.html http://www.cnblogs.com/luxiaoxun/arch ...
- ruby 模块 的引入
module My NA="China" def My.set_name(name) @name=name end def My.get_name return @name end ...
- 如何使用MIME类型
今天在使用System.Net.WebClient做一个下载的时候,很郁闷,已经发不好的文件视频,却怎么也下载不了. 究其原因有两个, System.Net.WebClient对象的DownloadF ...