![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 10:06 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 请教各位高手,这样的怎么实现? |
| 可打印版本 2,066 / 28 |
| 第16楼 chkau | 发表于 2007-04-19 09:41 |
| 初级用户 发帖 47 积分 101 | |
|
第一个,也就是应该是最少有人访问那个
|
|
| 第17楼 bjsh | 发表于 2007-04-19 09:44 |
| 银牌会员 发帖 621 积分 2,000 | |
|
你试试这个
我修改过了;
[ Last edited by bjsh on 2007-4-18 at 08:49 PM ] |
|
| 第18楼 chkau | 发表于 2007-04-19 22:48 |
| 初级用户 发帖 47 积分 101 | |
|
测试成功!非常感谢!!!
|
|
| 第19楼 htysm | 发表于 2007-04-20 00:10 |
| 高级用户 发帖 415 积分 866 | |
|
看得眼花,但是还是要加分。^O^
|
|
| 第20楼 chkau | 发表于 2007-04-21 23:48 |
| 初级用户 发帖 47 积分 101 | |
|
再请问一下bjsh大哥,我想在本地计算机自动以其他用户身份执行这个批处理,有办法实现吗?
runas要手动去输入密码的 |
|
| 第21楼 chkau | 发表于 2007-04-22 02:06 |
| 初级用户 发帖 47 积分 101 | |
|
大哥们帮看看啊,别沉了
|
|
| 第22楼 chkau | 发表于 2007-04-24 12:33 |
| 初级用户 发帖 47 积分 101 | |
|
BJSH大哥,有了个疑难问题啊,我今天用下那个代码,%A赋值出来不管怎么搞都是为空,也就是说一直提醒我删D:\,而不是D:\访问最早的文件夹,而我把那两行代码复制出来另外做个BAT,又能正确赋值,我想破了头也想不通是怎么回事,麻烦你帮我看一下啊,谢谢了
|
|
| 第23楼 bjsh | 发表于 2007-04-24 12:56 |
| 银牌会员 发帖 621 积分 2,000 | |
|
你把16行的set "ear_folder=%%A"改为echo %%A & pause 测试下看看回显.
|
|
| 第24楼 chkau | 发表于 2007-04-24 13:10 |
| 初级用户 发帖 47 积分 101 | |
|
忘记说了,我把1.bat改了个名字,试出来就是这个结果了,还有我在if "%p%"=="-1" for /f "delims=" %%A in ('dir /od /ta /ad /b d:\') do set "ear_folder=%%A" && goto jump
这一行里的dir后面加了/ad参数,我只想找到文件夹 还有我set "ear_folder=%%A"改为echo %%A & pause 后,还是提示我删除D:\ |
|
| 第25楼 chkau | 发表于 2007-04-24 13:19 |
| 初级用户 发帖 47 积分 101 | |
|
我在cmd里面执行这个批处理>>1.txt
1.txt里面是这个 访问时间最早的文件是 d:\ ;是否要删除 请按任意键继续. . . |
|
| 第26楼 chkau | 发表于 2007-04-24 13:28 |
| 初级用户 发帖 47 积分 101 | |
|
我发现个问题
if "%p%"=="-1" for /f "delims=" %%A in ('dir /od /ta /b d:') do set "ear_folder=%%A" && goto jump 这一行里那个d:后面要加一个\,否则如果该批处理在D盘里面某个文件夹下面的话,dir出来的结果会是当前文件夹里的文件列表,而不是D盘根目录里的 |
|
| 第27楼 chkau | 发表于 2007-04-24 13:41 |
| 初级用户 发帖 47 积分 101 | |
|
BJSH大哥,我好像发现问题了,这个脚本就是在找不到1.bat的情况下出的错,如果能找到1.bat或者是D盘剩余空间比要对比的文件夹大不了1G,都不会出错
也就是说在%P%的判定的时候出的问题,附作用 帮我看看是吗?谢谢啊^^BJSH大哥 |
|
| 第28楼 bjsh | 发表于 2007-04-26 12:28 |
| 银牌会员 发帖 621 积分 2,000 | |
|
是的;
能自己找到问题的所在;对你会有很大的提高啊! 就是在d盘剩余空间大于对比文件1G且找不到1.bat的情况下; 会出现问题 if "%p%"=="1" 1.bat if "%p%"=="-1" for /f "delims=" %%A in ('dir /od /ta /b d:') do set "ear_folder=%%A" && goto jump :jump echo 访问时间最早的文件是 d:\%ear_folder% ;是否要删除 & pause rd /s /q d:\%ear_folder% %p%==1了但是因为没有1.bat所以就直接跳到了jump标签处; 而且因为一开始D盘的剩余空间就大于对比文件1G; 因此%P% 没有等于过 -1 因此%ear_folder%没有定义过; 因此为空; 所以提示删除 d:\%ear_folder%时会提示删除 d:\ 如果开始D盘剩余空间比要对比的文件夹大不了1G 则 if "%p%"=="-1"至少被循环了一次;%ear_folder%也就有了定义;因此就不会出错; 解决办法就是: 保证1.bat存在; 或这改写 if "%p%"=="1" 1.bat 这句中的1.bat为你的要执行bat文件名即可 |
|
| 第29楼 chkau | 发表于 2007-04-26 15:44 |
| 初级用户 发帖 47 积分 101 | |
|
全托你的福^^我会不断努力提高的,BJSH大哥不要嫌我麻烦啊
|
|
| 上一页 1 2 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |