中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-13 19:25
楼 主 这段代码能不能精简一下 发表于 2008-04-20 17:14 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
@echo off
for %%i in ( e ) do (
if exist %%i:\FIM\*.nc set drive=%%i&goto another
)
goto :eof
:another
ren E:\FIM\a*.NC A-.nc
ren E:\FIM\b*.NC B-.nc
ren E:\FIM\c*.NC C-.nc
ren E:\FIM\d*.NC D-.nc
ren E:\FIM\e*.NC E-.nc
ren E:\FIM\f*.NC F-.nc
ren E:\FIM\g*.NC G-.nc
ren E:\FIM\h*.NC H-.nc
ren E:\FIM\i*.NC I-.nc
ren E:\FIM\j*.NC J-.nc
ren E:\FIM\k*.NC K-.nc
ren E:\FIM\l*.NC L-.nc
ren E:\FIM\m*.NC M-.nc
ren E:\FIM\n*.NC N-.nc
ren E:\FIM\o*.NC O-.nc
ren E:\FIM\p*.NC P-.nc
ren E:\FIM\q*.NC Q-.nc
ren E:\FIM\r*.NC R-.nc
ren E:\FIM\t*.NC T-.nc
ren E:\FIM\u*.NC U-.nc
ren E:\FIM\v*.NC V-.nc
ren E:\FIM\w*.NC W-.nc
ren E:\FIM\x*.NC X-.nc
ren E:\FIM\y*.NC Y-.nc
ren E:\FIM\z*.NC Z-.nc
ren E:\FIM\1*.NC 1-.nc
ren E:\FIM\2*.NC 2-.nc
ren E:\FIM\3*.NC 3-.nc
ren E:\FIM\4*.NC 4-.nc
ren E:\FIM\5*.NC 5-.nc
ren E:\FIM\6*.NC 6-.nc
ren E:\FIM\7*.NC 7-.nc
ren E:\FIM\8*.NC 8-.nc
ren E:\FIM\9*.NC 9-.nc
ren E:\FIM\0*.NC 0-.nc
2 发表于 2008-04-20 17:23 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
可以精简,但是ren E:\FIM\a*.NC A-.nc
这些命令不对吧,
所有的a*.NC 都命名为一个A-.nc?
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
3 发表于 2008-04-20 17:27 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
是的
4 发表于 2008-04-20 17:31 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
那是不可能的,会保存已经存在一个同名文件

除非你那里只要一个那样的文件
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
5 发表于 2008-04-20 17:34 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
能不能用累加的方法,...比如A-1 A-2
6 发表于 2008-04-20 17:36 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
@echo off
set num=0
for /f "delims=" %%i in ('dir /a-d /b e:\FIM\*.nc') do (
if not exist "e:\yiming\%%i" (
copy "e:\FIM\%%i" e:\yiming>nul
) else call :copy_nc "e:\FIM\%%i" "%%~ni" %%~xi
)


:copy_NC
set file_n=%2
set "file_n=%file_n:~1,-1%"
set file_x=%3
set /a num+=1
if not exist "e:\yiming\%file_n%%num%%file_x%" (
copy %1 "e:\yiming\%file_n%%num%%file_x%">nul
) else call :copy_nc %1 "%file_n%" %file_x%
set num=0




这个代码正好可以累加了,...呵呵,..能不能整体精简一下
7 发表于 2008-04-20 17:50 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
--------------a.txt
a A
b B
c C
...
--------------
cd E:\FIM\
for /f "tokens=1-2" %%i in (a.txt)do for %%a in (%%i*.nc)do call:ren "%%a" %%j
pause&exit
:ren
ren "%~1" %2_%n%.nc||goto:ren1
goto:eof
:ren1
set/a n=1
:ren2
if exist %2_%n%.nc set/a n+=1&goto:ren2
goto:ren

[ Last edited by plp626 on 2008-4-20 at 05:54 PM ]
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
8 发表于 2008-04-20 17:54 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
怎么用,..我是很菜很菜的鸟,....能把2段代码加在一起发上来吗
9 发表于 2008-04-20 17:57 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
我的代码只当你E:\FIM\目录下有大量的a*.NC ,b*.NC....

也没法测试,
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
10 发表于 2008-04-20 18:00 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
改不了文件名
11 发表于 2008-04-20 18:05 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
你得手动先写个a.txt里面的内容为:
a A
b B
c C
...
9 9
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
12 发表于 2008-04-20 18:06 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
写了,.但就是改不了名字,...能不能把上面那些代码加一起发给我
13 发表于 2008-04-20 18:12 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
for /f "tokens=1-2" %%i in (a.txt)do for %%a in (E:\FIM\%%i*.nc)do call:ren "%%a" %%j
pause&exit
:ren
ren "%~1" %2_%n%.nc||goto:ren1
goto:eof
:ren1
set/a n=1
:ren2
if exist %2_%n%.nc set/a n+=1&goto:ren2
goto:ren
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
14 发表于 2008-04-20 18:29 ·  中国 广东 广州 移动
初级用户
积分 72
发帖 28
注册 2008-04-19 01:37
UID 116290
性别 男
状态 离线
可以改了,...呵呵,.. 但是你改成了A_ 而不是 A- 能不能再修改一下??
15 发表于 2008-04-20 18:36 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
UID 103127
性别 男
状态 离线
把_换成-
山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
论坛跳转: