for /f "tokens=1,2,3,* delims=- " %%i in ('date /t') do set A=%%i&set B=%%j&set C=%%k&set D=%%l这句在XP中好用,在VISTA中不能用,即使以管理员运行也不能。貌似
for in ('')参数形式都不能运行?说'date /t'不是内部命令也不是外部命令。
请高手解释下?
纳闷的还有,VISTA中FOR说明中的例句:
FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i
也不能运行,说'set'不是内部命令也不是外部命令。
[ Last edited by zihongdelei on 2008-2-21 at 06:08 PM ]作者: pooronce 时间: 2008-2-21 17:48 date /t ← 这里没空格?
直接在命令行下面打命令?是的话%%i等替换成%i,单个,两个是用于批处理里面的
另外可以试着加usebackq 然后用`括住命令作者: zihongdelei 时间: 2008-2-21 17:52 哦!date /t原本有空格,不能运行,后来去掉还是不能。我说怎么有时候提示不应有%%i呢!学到啦~还有usebackq是怎么用?问题未解决呢……作者: zihongdelei 时间: 2008-2-21 17:56 usebackq用了后FOR将 date /t 当作字符串分解了。我想让它当命令执行,然后分解执行结果。作者: pooronce 时间: 2008-2-21 18:37 加usebackq后,命令就用`(~键)括起来的
只是让你试一下的,这里可以不用usebackq的,用它是在某些命令中含有单撇号的情况下作者: zihongdelei 时间: 2008-2-21 18:44 FOR /F "usebackq tokens=1,* delims=:" %%i IN (`time /T`) DO set E=%%i&set F=%%j
运行结果一样,不是内部命令也不是外部命令。另外在FOR语句讲解帖子中多次提到的分解时间。就是我问的这个,一样不可以在VISTA中运行……作者: everest79 时间: 2008-2-21 20:25 for /f %i in ('date /t') do echo %i
显示2008/2/21
for /f %i in ('set') do echo %i
枚兴所有变量