找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26717|回复: 8

[文本处理] [已解决]批处理命令 for 字符截取怎样获取域名中间?

[复制链接]
发表于 2015-4-30 15:26:29 | 显示全部楼层 |阅读模式
本帖最后由 sinsky 于 2015-5-6 21:16 编辑

本来的思路是用户输入域名之后bat提取域名中间,然后计算域名中间的长度然后递增截取的,无奈,计算长度出错,退而求其次,指定长度截取,但是后面的%%i好像怎么都会被吃掉 求助,无奈了。。。

最好两个能合一起 ,当然你有更好的想法也可以共享下。bat完成。
  1. set domaincenter = baidu
  2. for /l %%i in (1,1,10) do (echo %domaincenter:~0,%%i%)
复制代码
ps:csdn问了,没人回我,csdn这是要黄的节奏啊。。。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-4-30 16:12:02 | 显示全部楼层
本帖最后由 CrLf 于 2015-4-30 19:53 编辑
  1. set domaincenter=baidu
  2. setlocal enabledelayedexpansion
  3. for /l %%i in (1,1,10) do (echo !domaincenter:~0,%%i!)
复制代码
发表于 2015-4-30 19:35:44 | 显示全部楼层
貌似变量名的空格得去掉。。。

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 感谢指正

查看全部评分

发表于 2015-4-30 19:59:44 | 显示全部楼层
回复 3# xxpinqz


    没注意,已修改
发表于 2015-4-30 20:48:13 | 显示全部楼层
  1. @echo off
  2. Setlocal enabledelayedexpansion
  3. set domaincenter=baidu
  4. for /f "delims=" %%a in ('cmd/u/cecho !domaincenter!^|more')do set/a n+=1
  5. for /l %%i in (1,1,!n!) do (echo !domaincenter:~0,%%i!)
  6. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2015-4-30 23:49:59 | 显示全部楼层
回复 5# yangfengoo

牛X啊,谢谢。

另外请教个问题!和%有什么区别,什么时候用 什么时候不应该用?
 楼主| 发表于 2015-4-30 23:59:48 | 显示全部楼层
回复 5# yangfengoo


    Setlocal enabledelayedexpansion

在这个环境里必须有吗?
发表于 2015-5-6 22:02:43 | 显示全部楼层
csdn问了,没人回我,csdn这是要黄的节奏啊

找对地方很重要,CSDN懂BAT的不多。
 楼主| 发表于 2015-5-6 22:14:42 | 显示全部楼层
回复 8# gawk


    是的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 05:14 , Processed in 0.019549 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表