Board logo

标题: [文件操作] 批处理创建001~099这样文件名 [打印本页]

作者: a303862146    时间: 2008-4-10 19:26     标题: 批处理创建001~099这样文件名

关于时间显示的。。。一般DATA命令会显示出具体日期,但是我要的是这样的格式:20080410这样的显示的一个批处理
另外需要一个创建001~099这样文件名的TXT文件的批处理
创建001~099这样文件名

[ 本帖最后由 随风 于 2008-4-11 10:47 编辑 ]
作者: fml520    时间: 2008-4-10 19:44

@echo off
for /l %%a in (1 1 99)   do if  %%a lss 10  (cd.>00%%a.txt) else cd.>0%%a.txt
set  nian=%date:~0,4%
set  yue=%date:~5,2%
set  ri=%date:~8,2%
set  he=%nian%%yue%%ri%
echo %he%
pause
作者: a303862146    时间: 2008-4-10 19:49

请问能不能给一个详细的说明?我刚接触这个。。。能不能解释一下每句话的意思,if  %%a lss 10  (cd.>00%%a.txt) else cd.>0%%a.txt
还有set  nian=%date:~0,4%
set  yue=%date:~5,2%
set  ri=%date:~8,2%
set  he=%nian%%yue%%ri%
echo %he%
pause这些的意思。。特别是%号里的
作者: 随风    时间: 2008-4-10 20:05

:
  1. @echo off
  2. for /f "tokens=1-3 delims=./- " %%a in ("%date%") do echo %%a%%b%%c
  3. echo.
  4. for /l %%a in (1001 1 1099) do (
  5.    set "var=%%a"
  6.    call echo %%var:~-3%%
  7. )
  8. pause
复制代码

作者: uail    时间: 2008-4-11 13:50

是呀,但难了看不懂哦。。。。
作者: jay006    时间: 2008-4-14 11:09

if  %%a lss 10  (cd.>00%%a.txt) else cd.>0%%a.txt

这句谁能解释给我听下``里面的每一个命令
作者: 新明    时间: 2008-4-14 11:50     标题: if %%a lss 10 (cd.>00%%a.txt) else cd.>0%%a.txt

如果变量a小于10 ,生成00加变量a 的txt 文档,如果变量a大于10则生成0加变量a 的txt 文档
作者: a303862146    时间: 2008-4-15 20:56

那如果是001到100呢- -那该怎么弄呢
作者: youxi01    时间: 2008-4-15 21:09

原帖由 a303862146 于 2008-4-15 20:56 发表
那如果是001到100呢- -那该怎么弄呢


测试代码:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%i in (1 1 100) do (
  3.      set var=000%%i
  4.      set var=!var:~-3!
  5.     cd.>!var!.txt
  6. )
  7. pause>nul
复制代码





欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2