标题: [求助]一个关于更名的BAT的写法或思路
[打印本页]
作者: cad55
时间: 2008-11-30 09:10
标题: [求助]一个关于更名的BAT的写法或思路
请大帮一下:
在某个文件夹内有多个或一个数量不等,且是加长名的*.TXT文件。
想将些TXT,复制至其它文件夹内,后将它们更名,(按时间或什么的不重复就可)。(原文件夹的内的TXT名称不变)
将各位写一下。。。
或者提示一下,怎样“模糊”查询,哪些数量不等的文件。。。。
作者: sea1112
时间: 2008-11-30 09:43
看不明你说什么,给个图例说解一下吧。
作者: cad55
时间: 2008-11-30 09:57
A文件夹有:001.txt
1233er4.txt
{7C709B24-F250-4B5C-9B71-3993875B0E95}.txt
{7C709B24-F250-4B5C-9B71-3993875B0rrgg5}.txt
.............等不规则的文件
想将这些文件复制至
B文件夹,且更名为:11.30.9.32.txt
11.30.9.33.txt
11.30.9.34.txt
.........等,用时间命名或用其它不重复的命名方法。
作者: kissbill
时间: 2008-11-30 11:22
看下这个能用否
@echo off
for /f "delims=" %%i in ('dir /b /a-d *.txt') do (copy "%%i" "b\123%%~ni.txt" >nul 2>nul)
pause
作者: sea1112
时间: 2008-11-30 21:52
::把所有*.txt文件复制到d:\b\目录,以数字改名
@echo off
for /f "delims=" %%i in ('dir /b/s *.txt') do (set /a num+=1&&call copy %%i d:\b\%num%.txt /y)
::把所有*.txt文件复制到d:\b\目录,以时间改名
@echo off
for /f "delims=" %%i in ('dir /b/s *.txt') do (call copy %%i d:\b\%time:~0,2%.%time:~3,2%.%time:~6,2%.txt.txt /y)
作者: cad55
时间: 2008-11-30 22:57
先谢一下楼上两位
但代码均不可用。
将sea1112的代码修改一下可以用:
@echo off
for /f "delims=" %%i in ('dir /b/s *.txt') do (set /a num+=1&&call copy %%i d:\b\%%num%%.txt /y)
但它不能对中文名的TXT作用。还请再改改。。。谢谢了
作者: sea1112
时间: 2008-11-30 23:13
@echo off
for /f "delims=" %%i in ('dir /b/s *.txt') do (set /a num+=1&&call copy "%%i" "d:\b\%%num%%.txt" /y)
%%i改为“%%i”就好了。是copy 后边的变量加""
为什么要%%num%%这样啊,
%num%就可以了。
[
Last edited by sea1112 on 2008-11-30 at 23:22 ]
作者: cad55
时间: 2008-11-30 23:16
Quote: |
Originally posted by sea1112 at 2008-11-30 11:13 PM:
@echo off
for /f "delims=" %%i in ('dir /b/s *.txt') do (set /a num+=1&&call copy "%%i" d:\b\%%num%%.txt /y)
%%i改为“%%i”就好了。是copy 后边的变量加 ... |
|
好,,可以了
太感谢了
(但%num%不可以。。。)
[
Last edited by cad55 on 2008-11-30 at 23:18 ]
作者: sea1112
时间: 2008-11-30 23:24
那就用%%num%%吧,给我+分
^_^
有问题一定帮你