中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-07 05:35
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 【建立临时文件与文件夹应注意的问题】 查看 672 回复 1
楼 主 【建立临时文件与文件夹应注意的问题】 发表于 2008-01-15 15:50 ·  中国 陕西 西安 电信
银牌会员
★★★★
钻石会员
积分 2,278
发帖 1,020
注册 2007-11-19 13:34
18年会员
UID 103127
性别 男
状态 离线
论坛里有人建临时文件时尽量用特殊字符,看来是怕路径下已经有要建立的文件才这么做,比如给文件名前个#或$,但这只能减少重名的可能性,不能消除重名.
也有人直接覆盖,这有点威胁了,在自己机子上运行还罢了,若别人拿去运行,弄不好把重要文件丢失了还不知道呢.
我觉得一下的代码还是很必要的(可以作为子过程调用),写代码要考虑任何可能的状况,以防出错.

思路:当路径下已经有要建立的文件时,改名!若还有重名再改名,...,当没有重名时结束子过程
::间临时文件夹
call :tmpfolder

echo -------tmp_%num%-----------
pause
exit
:tmpfolder
set "num="
:loop
md tmp_%num% >nul 2>nul&&goto :eof||set /a num+=1
goto :loop


::建临时文件
call :tmpfile vbs
echo --------tmp_%num%.%1---------------

pause
exit
:tmpfile
set "num="
:loop
if exist tmp_%num%.%1 set /a num+=1&goto loop
cd.>tmp_%num%.%1
goto :eof


[ Last edited by plp626 on 2008-1-15 at 04:09 PM ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
lxmxn +4 2008-01-15 17:50
2 发表于 2008-01-15 17:50 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
不错,值得推荐。
论坛跳转: