中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 我想问像这样的 ( %~t0 ) 还有那些?
作者:
标题: 我想问像这样的 ( %~t0 ) 还有那些? 上一主题 | 下一主题
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『楼 主』:  我想问像这样的 ( %~t0 ) 还有那些? 使用 LLM 解释/回答一下

在本坛发现一批如下,运行后得本批时间

@echo off
echo %~t0
pause

我想问像这样的 ( %~t0 ) 还有那些?

麻烦知道的给说一下


2008-2-25 11:34
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下

怎么一下就发两个?


2008-2-25 11:35
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
pooronce
中级用户





积分 484
发帖 250
注册 2007-6-5
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下

%~1 - 删除引号("),扩充 %1
%~f1 - 将 %1 扩充到一个完全合格的路径名
%~d1 - 仅将 %1 扩充到一个驱动器号
%~p1 - 仅将 %1 扩充到一个路径
%~n1 - 仅将 %1 扩充到一个文件名
%~x1 - 仅将 %1 扩充到一个文件扩展名
%~s1 - 扩充的路径指含有短名
%~a1 - 将 %1 扩充到文件属性
%~t1 - 将 %1 扩充到文件的日期/时间
%~z1 - 将 %1 扩充到文件的大小
%~$PATH : 1 - 查找列在 PATH 环境变量的目录,并将 %1
扩充到找到的第一个完全合格的名称。如果环境
变量名未被定义,或者没有找到文件,此组合键会
扩充到空字符串

可以组合修定符来取得多重结果:

%~dp1 - 只将 %1 扩展到驱动器号和路径
%~nx1 - 只将 %1 扩展到文件名和扩展名
%~dp$PATH:1 - 在列在 PATH 环境变量中的目录里查找 %1,
并扩展到找到的第一个文件的驱动器号和路径。
%~ftza1 - 将 %1 扩展到类似 DIR 的输出行。

在上面的例子中,%1 和 PATH 可以被其他有效数值替换。
%~ 语法被一个有效参数号码终止。%~ 修定符不能跟 %*
使用


请参考call /?
多看命令的帮助吧
另外你这贴子发重复了


2008-2-25 11:42
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 4 楼』:   使用 LLM 解释/回答一下

我试了后,发现与FOR的一样, 就是不知 "%~t0 " 中的 "0" 是什么意思


FOR 变量参照的替换已被增强。您现在可以使用下列
选项语法:

~I - 删除任何引号("),扩充 %I
%~fI - 将 %I 扩充到一个完全合格的路径名
%~dI - 仅将 %I 扩充到一个驱动器号
%~pI - 仅将 %I 扩充到一个路径
%~nI - 仅将 %I 扩充到一个文件名
%~xI - 仅将 %I 扩充到一个文件扩展名
%~sI - 扩充的路径只含有短名
%~aI - 将 %I 扩充到文件的文件属性
%~tI - 将 %I 扩充到文件的日期/时间
%~zI - 将 %I 扩充到文件的大小
%~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个完全合格的名称。如果环境变量名
未被定义,或者没有找到文件,此组合键会扩充到
空字符串

可以组合修饰符来得到多重结果:

%~dpI - 仅将 %I 扩充到一个驱动器号和路径
%~nxI - 仅将 %I 扩充到一个文件名和扩展名
%~fsI - 仅将 %I 扩充到一个带有短名的完整路径名
%~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个驱动器号和路径。
%~ftzaI - 将 %I 扩充到类似输出线路的 DIR

在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法
用一个有效的 FOR 变量名终止。选取类似 %I 的大写变量名
比较易读,而且避免与不分大小写的组合键混淆。


2008-2-25 11:44
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 5 楼』:   使用 LLM 解释/回答一下

Originally posted by pooronce at 2008-2-25 11:42 AM:
%~1 - 删除引号("),扩充 %1
%~f1 - 将 %1 扩充到一个完全合格的路径名
%~d1 - 仅将 %1 扩充到一个驱动器号
%~p1 ...


谢了,

我也不知为何一下就发了两

call /?命令的帮助看了,

可是还不知 "%~t0" 的 "0" 是什么意思


2008-2-25 11:52
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 6 楼』:   使用 LLM 解释/回答一下

.cmd=cmdfile="%1" %*
%0=上边的那个"%1"




49206C6F766520796F752067757973 54656C3A3133383238343036373837
2008-2-25 11:53
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 7 楼』:   使用 LLM 解释/回答一下

还是不懂,麻烦来个 实例批 具体点好吗


2008-2-25 12:21
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 8 楼』:   使用 LLM 解释/回答一下

新建一个批处理hy433124shc.cmd

内容为
echo %0
pause

然后执行看看
再到cmd下手动输入这个批处理名字执行看看




49206C6F766520796F752067757973 54656C3A3133383238343036373837
2008-2-25 12:36
查看资料  发短消息  网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 9 楼』:   使用 LLM 解释/回答一下

%0代表你运行的那个批处理本身


2008-2-25 13:31
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 10 楼』:   使用 LLM 解释/回答一下

有点头绪

有一批名 HY433124SHC.CMD 如下
@ECHO OFF
set var=a
echo %var%
set /p var=%0
echo %1
%1
echo %2
echo %3
echo %var%
PAUSE

在 C:\>HY433124SHC.CMD DIR A B 中则有

%0 为 HY433124SHC。CMD
%1 为 DIR
%2 为 A
%3 为 B


是这样理解的吗????

Last edited by hy433124shc on 2008-2-25 at 06:21 PM ]


2008-2-25 18:19
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 11 楼』:   使用 LLM 解释/回答一下

顶一下,
还没结果呢!


2008-2-25 21:23
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

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


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



论坛跳转: