标题: 本机能用的批处理,换别的机子就不能用了...
[打印本页]
作者: ixxxxyou
时间: 2008-6-29 02:37
标题: 本机能用的批处理,换别的机子就不能用了...
此为清理found和$开头的文件夹..
内容如下:
set alldrive=c d e f g h i j k l m n o p q r s t u v w x y z
for %%a in (%alldrive%) do (
for /f "delims=" %%b in ('dir /ad/b %%a:\found.*') do (
rd /s /q "%%a:\%%b"
)
) >nul 2>nul
for /f "delims=" %%a in ('dir /ad/b "%windir%\$*$" 1^>nul 2^>nul') do (rd /s/q "%windir%\%%a")
在本机上能够清除,但是换到别的机子上运行就没能清除$*$文件了..是那里出错了吗???
作者: lxmxn
时间: 2008-6-29 03:04
本机和别的机子环境是否一样?
作者: HAT
时间: 2008-6-29 11:30
命令行解释器里面运行一下最后一句不就知道原因了吗?
作者: ixxxxyou
时间: 2008-6-29 20:54
Quote: |
Originally posted by lxmxn at 2008-6-29 03:04 AM:
本机和别的机子环境是否一样? |
|
这个倒没有看留意..
试过一台用深度系统的机子不能清理,和一台 安装原版XP的(一步一步安装的)也不能清理
作者: quya
时间: 2008-6-29 21:08
会不会是权限问题呢?
本机你是管理员,别的机器上就不一定了。$开头的文件夹都是管理员和SYSTEM权限。
作者: ixxxxyou
时间: 2008-6-29 21:22
都是管理员的
作者: ixxxxyou
时间: 2008-6-30 21:08
继续顶上去!
作者: HAT
时间: 2008-6-30 22:02
命令行解释器里面运行一下最后一句,把结果贴出来看看。
作者: balinger
时间: 2008-7-1 00:14
恕我愚昧,我怎么以为在哪台机子上,也删不了$打头的文件夹。
可楼主明言本机可用。
dir /ad/b "%windir%\$*$" 1>nul 2>nul 能显示$打头的文件夹?
作者: quya
时间: 2008-7-1 00:30
Quote: |
Originally posted by balinger at 2008-7-1 12:14 AM:
恕我愚昧,我怎么以为在哪台机子上,也删不了$打头的文件夹。
可楼主明言本机可用。
dir /ad/b "%windir%\$*$" 1>nul 2>nul 能显示$打头的文件夹? |
|
哎呀,你总算看出来了。经提醒, 我也知道了。
2^>nul 可以保留的, 但1^>nul 错大了, 这样导致任何情况下都不能正常运行。
作者: ixxxxyou
时间: 2008-7-1 02:24
能解释下1^>nul 这个怎么错了吗?
作者: quya
时间: 2008-7-1 08:22
Quote: |
Originally posted by ixxxxyou at 2008-7-1 02:24 AM:
能解释下1^>nul 这个怎么错了吗? |
|
输出结果被屏蔽了, 你怎么再del 这个输出结果?
9楼的话很有道理, 你就算在本机也无法得到准确的结果.
作者: ixxxxyou
时间: 2008-7-1 16:43
Quote: |
Originally posted by quya at 2008-7-1 08:22 AM:
输出结果被屏蔽了, 你怎么再del 这个输出结果?
9楼的话很有道理, 你就算在本机也无法得到准确的结果. |
|
但是在本机真的可以清理掉$开头的文件夹啊.. 奇怪了, 还真搞不懂呢
Quote: |
Originally posted by quya at 2008-7-1 08:22 AM:
输出结果被屏蔽了, 你怎么再del 这个输出结果?
|
|
这个明白了! 谢谢各位!
作者: tvzml
时间: 2008-7-9 02:09
rd /s/q 后面的变量为空白时,将删除全部文件,楼主要特别小心啊