中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: (已结)ren a %date%.txt 上一主题 | 下一主题
zxllxz
新手上路





积分 4
发帖 2
注册 2005-10-12
状态 离线
『楼 主』:  (已结)ren a %date%.txt

需要对产生的文件a 进行改名ren a %date%.txt
不能实现,有什么语法错误,目的是对每天产生的a改名为当天时间命名的文本文件.

---------- Edited by willsort  ----------
解决方案如下:

ren a "%date%.txt"        ——2楼

此种方法产生的文件名会包含星期计数,想去掉它取决于你系统中%date%的日期格式,如果是类似 “2005-10-15 星期六”,可以使用

ren a "%date:~0,10%.txt"      ——2楼

如果是类似 “Sat 2005-10-15” 的格式,则需要使用

ren a "%date:~-10%.txt"

如果是其它的日期格式还可能需要另作处理。

这仅仅是NT系列平台下的NTVDM环境(DOS窗口)中才能使用的方法,在MSDOS6.22/7.10/Win9x下需要使用另外的方案,请搜索本论坛。
---------- Edited by willsort ----------


[ Last edited by willsort on 2005-10-15 at 18:27 ]

2005-10-12 13:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
无奈何
荣誉版主





积分 1338
发帖 356
注册 2005-7-15
状态 离线
『第 2 楼』:  

试试这样 ren a "%date%.txt"

事实上这样,并不一定获得如 “2005-10-12”这样得格式,这与日期格式跟区域设置有关。如果想获得如上所示的格式,请用下面的方法:

ren a "%date:~0,10%.txt"

2005-10-12 15:14
查看资料  发送邮件  发短消息 网志  OICQ (105400208)  编辑帖子  回复  引用回复
zxllxz
新手上路





积分 4
发帖 2
注册 2005-10-12
状态 离线
『第 3 楼』:  

正解!谢谢!

2005-10-12 15:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
不得不爱
超级版主

我爱DOS


积分 5310
发帖 2044
注册 2005-9-26
来自 四川南充
状态 离线
『第 4 楼』:  

不知为什么要把%date%.txt用“”影起来才能正确?



我的网络U盘 我的网络第2个U盘
论坛软件下载链接
灵雨飘零论坛  
论坛新手必读,所有人的基本行为准则
刷QQ空间人气、留言的小软件
2005-10-12 16:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
JonePeng
金牌会员

D◎$ Fαп


积分 4562
发帖 1883
注册 2004-1-19
来自 广东广州
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by qwe1234567 at 2005-10-12 16:27:
不知为什么要把%date%.txt用“”影起来才能正确?

在CMD下,你试试运行 echo %date% 看看结果是什么?作为斑竹,你应该看得出来是什么原因的了,呵呵。



----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
  
2005-10-12 16:41
查看资料  发送邮件  发短消息 网志  OICQ (373343541)  编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 6 楼』:  

Re 无奈何:

      %date:~0,10%v 仍然无法避免因为日期格式或者代码页不同所造成的不兼容状况。而且在XP的环境下,某些日期变量格式的变化出人意料。比如下面的命令行截取。其中的“星期三”在窗口字体为“点阵字体”时会显示为“???”,为 “Lucida Console” 时正常显示。

  Quote:
C:\Documents and Settings\wil>chcp 437
Active code page: 437

C:\Documents and Settings\wil>echo %date%
星期三 2005-10-12

Re qwe1234567 :

      作为论坛版主,积极热情是第一要素,管理经验排是第二要素,技术水平只能是第三要素。qwe1234567 兄这几天来的发帖率已经充分证实了第一要素的具备,第二要素我们会拭目以待,第三要素则可能需要一段时间的培养和积累。

      在此,我希望 qwe1234567 兄能继续保持这种对DOS和中国DOS联盟的热情,为我们论坛的持久发展做出贡献!



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-10-12 23:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
无奈何
荣誉版主





积分 1338
发帖 356
注册 2005-7-15
状态 离线
『第 7 楼』:  

to willsort
我试了一下当代码页: 为437时,不能显示中文,当字体设为“Lucida Console”汉字过长时也不能完整显示,选中汉字时还会出现选中半个汉字的时候。更改代码页后确实有问题。但我想不通使用中文 XP 处理中文文档更改其他代码页的必要性。

2005-10-13 00:23
查看资料  发送邮件  发短消息 网志  OICQ (105400208)  编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 8 楼』:  

Re 无奈何:

      在中文XP命令行环境中,仍然有许多使用437代码页的可能,比如运行16位DOS程序,代码页的自动切换;比如我现在的中文XP环境,使用运行CMD的方式进入命令行,便默认是437代码页,尽管这有些古怪。



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-10-13 00:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chenhui530
高级用户





积分 772
发帖 273
注册 2004-10-23
状态 离线
『第 9 楼』:  

在XP中使用
for /f "tokens=1,2,3 delims=- " %a in ('date /t') do ren a %a%b.txt



http://www.msfans.net/bbs/
2005-10-13 11:27
查看资料  发送邮件  发短消息 网志  OICQ (77740821)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: