![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-06 09:14 |
共 48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 请问 如何 获取字符串的子串 |
| 可打印版本 1,739 / 15 |
| 第1楼 biwier | 发表于 2007-11-01 12:07 |
| 初级用户 发帖 34 积分 98 | |
|
请问 如何 获取字符串的子串 我用for /F "usebackq delims=:" %%i in (`date /T`) do set ddtmp=%%i:~-10%
获取 月-日-年 不成功 郁闷 这里~-10%似乎不起作用 |
|
| 第2楼 abcd | 发表于 2007-11-01 12:25 |
| 银牌会员 发帖 739 积分 1,436 | |
|
楼主的date输出格式 是什么样子的??
|
|
| 第3楼 dikex | 发表于 2007-11-01 13:14 |
| 高级用户 发帖 366 积分 788 | |
|
试试这个
|
|
| 第4楼 biwier | 发表于 2007-11-01 16:09 |
| 初级用户 发帖 34 积分 98 | |
|
thur 10-31-2007
|
|
| 第5楼 biwier | 发表于 2007-11-01 16:10 |
| 初级用户 发帖 34 积分 98 | |
Originally posted by dikex at 2007-11-1 13:14: 这个太复杂了。。。 你的环境不是简单的ms-dos吧 在我的dos下运行不了 %date "...." |
|
| 第6楼 abcd | 发表于 2007-11-01 16:24 |
| 银牌会员 发帖 739 积分 1,436 | |
|
echo %date:* =%
echo %date:~6% |
|
| 第7楼 biwier | 发表于 2007-11-01 16:32 |
| 初级用户 发帖 34 积分 98 | |
|
谢谢abcd
不过,我写到batch里面好像不行了。。。 for /F "usebackq delims= " %%i in (`echo %date:* =%`) do set ddtmp=%%i 感觉我原来的方法也行,可能需要一个cmd /d 命令扩展delay啥的 对了,,能否说说这是什么语法?怎么查到这样的语法讲解?? |
|
| 第8楼 abcd | 发表于 2007-11-01 16:37 |
| 银牌会员 发帖 739 积分 1,436 | |
|
我的意思是不需要for啦,直接echo出来就行了。可以直接
%date:~6%可以直接当变量使用的。 |
|
| 第9楼 biwier | 发表于 2007-11-01 16:55 |
| 初级用户 发帖 34 积分 98 | |
|
恩,有的console下可以,有的却显示%i ,暂时还不知道原因
|
|
| 第10楼 abcd | 发表于 2007-11-01 17:01 |
| 银牌会员 发帖 739 积分 1,436 | |
|
用for的话
for /f "tokens=1*" %%i in ('date /t') do @echo %%j |
|
| 第11楼 biwier | 发表于 2007-11-01 17:53 |
| 初级用户 发帖 34 积分 98 | |
Originally posted by abcd at 2007-11-1 17:01: 这一步我也能做到 但把 echo 换成 set xx=%j:~-10% 好像就不可以了 我再try 谢谢 |
|
| 第12楼 abcd | 发表于 2007-11-01 18:02 |
| 银牌会员 发帖 739 积分 1,436 | |
|
搞清楚
变量%%j和变量%j%是不一样的 %%j只能在for中使用,而且只能扩展,不能截取 而%j%只能截取或替换,而没有扩展 |
|
| 第13楼 biwier | 发表于 2007-11-01 19:06 |
| 初级用户 发帖 34 积分 98 | |
|
醍醐灌顶阿!!!3x
|
|
| 第14楼 dikex | 发表于 2007-11-01 19:25 |
| 高级用户 发帖 366 积分 788 | |
Originally posted by biwier at 2007-11-1 04:10 PM: ms-dos?dos? 记得这些里面的for都没有/f参数的,所以你的不会时ms-dos; 2000、xp等里面的cmd是命令提示符不是dos,和dos有很大区别的。 而我的运行环境是xp sp2 pro; 默认的日期格式是:2007-11-01 星期四 修改日期格式为:Thu 2007-11-01 在命令行和批处理里面两种日期格式都可以通过 |
|
| 第15楼 RocheChild | 发表于 2007-11-01 22:35 |
| 初级用户 发帖 44 积分 110 | |
Originally posted by dikex at 2007-11-1 07:25 PM: 我在家里的机器上测试了,你的是可以的 ,在公司的时候是写了脚本里的,在英文版os上测试的 不过你写了三个句子也太复杂了....高手考虑得太全面了^_^ Rochechild=biwier |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |