新建一个bat:dir C:\Program Files >> c:\a.txt 怎么什么也输出不来啊 就用dir命令该怎么改啊?
3个回答
2011-04-11
展开全部
LEDELAYEDEXPANSION
echo.>>统计文件个数.txt
if "%1"=="h" goto start
>%temp%\dj.vbs echo set ws=createobject("wscript.shell")
>>%temp%\dj.vbs echo do
>>%temp%\dj.vbs echo wscript.sleep 3600000
>>%temp%\dj.vbs echo ws.run """%~0"""+"h",0,true
>>%temp%\dj.vbs echo loop
start %temp%\dj.vbs
:start
for /f %%i in ('dir /b /a-d') do (
set /a s+=1
)
set /a s=s-2
echo %date% 系统时间%time:~0,5% 统计给文件夹下有: %s% 文件>>统计文件个数.txt
说明:上面是一个小时统计一次 批处理文件 所在 文件夹里面 的文件的 个数,统计数放在 叫 ”统计文件个数“里面的,
如果要改变统计时间 把上面的 3600000 数值改成你要统计时间的数值,该单位是毫秒,3600000就表示1个小时,3600000毫秒,如果是一秒,就改成 1000。
把上面的代码复制到记事本里面,保存为bat的格式,然后把该批处理文件放在要统计的文件夹里面,
注意:我把 该批处理文件和上面的统计数值的文件排除了,所以只统计你文件下的文件个数,不会统计这两个文件。
补充说明:要是该批处理不放在查看的文件夹下,就必须要写出统计的文件夹的路径,假如要查看c:\windows 下面的文件个数,就该上面的for /f %%i in ('dir /b /a-d')中()里面的内容,那么就是 ('dir /b /a-d c:\widows\*'),是不是只加了个 c:\windows\* ,就是这样,只加这个,*是通配符,表示所有文件。所以就写在这里。
要改变输入内容的文件,假如把上面的 “统计文件个数.txt”这个文件保存在 c: 下,那么上面的只改有 “统计文件个数.txt”字符的地方,把前面加上输入的路径就行的,那么就是 c:\统计文件个数.txt ,好,就是这样,
上面的代码就是这样:
@echo off
setlocal ENABLEDELAYEDEXPANSION
echo.>>c:\统计文件个数.txt
if "%1"=="h" goto start
>%temp%\dj.vbs echo set ws=createobject("wscript.shell")
>>%temp%\dj.vbs echo do
>>%temp%\dj.vbs echo wscript.sleep 3600000
>>%temp%\dj.vbs echo ws.run """%~0"""+"h",0,true
>>%temp%\dj.vbs echo loop
start %temp%\dj.vbs
:start
for /f %%i in ('dir /b /a-d c:\windows\*') do (
set /a s+=1
)
echo %date% 系统时间%time:~0,5% 统计给文件夹下有: %s% 文件>>c:\统计文件个数.txt
注释:没有set /a s=s-2 ,因为刚是把该文件放在一个文件夹下的,所以要减去批处理和统计文件这两个文件 。
特别注意的是,如果上面改写的文件路径中有空格,必须用“”括起来,比如
C:\Documents and Settings\Administrator\桌面 这个路径,其中Documents and Settings 中就有空格,所以要加“”,所以就是 “C:\Documents and Settings\Administrator\桌面”上面()里面那个路径有空,也要加上“”,所以就是 ”c:\windows\*“
echo.>>统计文件个数.txt
if "%1"=="h" goto start
>%temp%\dj.vbs echo set ws=createobject("wscript.shell")
>>%temp%\dj.vbs echo do
>>%temp%\dj.vbs echo wscript.sleep 3600000
>>%temp%\dj.vbs echo ws.run """%~0"""+"h",0,true
>>%temp%\dj.vbs echo loop
start %temp%\dj.vbs
:start
for /f %%i in ('dir /b /a-d') do (
set /a s+=1
)
set /a s=s-2
echo %date% 系统时间%time:~0,5% 统计给文件夹下有: %s% 文件>>统计文件个数.txt
说明:上面是一个小时统计一次 批处理文件 所在 文件夹里面 的文件的 个数,统计数放在 叫 ”统计文件个数“里面的,
如果要改变统计时间 把上面的 3600000 数值改成你要统计时间的数值,该单位是毫秒,3600000就表示1个小时,3600000毫秒,如果是一秒,就改成 1000。
把上面的代码复制到记事本里面,保存为bat的格式,然后把该批处理文件放在要统计的文件夹里面,
注意:我把 该批处理文件和上面的统计数值的文件排除了,所以只统计你文件下的文件个数,不会统计这两个文件。
补充说明:要是该批处理不放在查看的文件夹下,就必须要写出统计的文件夹的路径,假如要查看c:\windows 下面的文件个数,就该上面的for /f %%i in ('dir /b /a-d')中()里面的内容,那么就是 ('dir /b /a-d c:\widows\*'),是不是只加了个 c:\windows\* ,就是这样,只加这个,*是通配符,表示所有文件。所以就写在这里。
要改变输入内容的文件,假如把上面的 “统计文件个数.txt”这个文件保存在 c: 下,那么上面的只改有 “统计文件个数.txt”字符的地方,把前面加上输入的路径就行的,那么就是 c:\统计文件个数.txt ,好,就是这样,
上面的代码就是这样:
@echo off
setlocal ENABLEDELAYEDEXPANSION
echo.>>c:\统计文件个数.txt
if "%1"=="h" goto start
>%temp%\dj.vbs echo set ws=createobject("wscript.shell")
>>%temp%\dj.vbs echo do
>>%temp%\dj.vbs echo wscript.sleep 3600000
>>%temp%\dj.vbs echo ws.run """%~0"""+"h",0,true
>>%temp%\dj.vbs echo loop
start %temp%\dj.vbs
:start
for /f %%i in ('dir /b /a-d c:\windows\*') do (
set /a s+=1
)
echo %date% 系统时间%time:~0,5% 统计给文件夹下有: %s% 文件>>c:\统计文件个数.txt
注释:没有set /a s=s-2 ,因为刚是把该文件放在一个文件夹下的,所以要减去批处理和统计文件这两个文件 。
特别注意的是,如果上面改写的文件路径中有空格,必须用“”括起来,比如
C:\Documents and Settings\Administrator\桌面 这个路径,其中Documents and Settings 中就有空格,所以要加“”,所以就是 “C:\Documents and Settings\Administrator\桌面”上面()里面那个路径有空,也要加上“”,所以就是 ”c:\windows\*“
追问
@echo off
set dd=%date:~8,2%
set mm=%date:~5,2%
set yy=%date:~0,4%
set Tss=%TIME:~6,2%
set Tmm=%TIME:~3,2%
set Thh=%TIME:~0,2%
set Thh=%Thh: =0%
set folder="%yy%.%mm%.%dd%.%Thh%.%Tmm%.%Tss%"
echo.
echo 当前时间为%folder%
md %folder%
echo.
echo 以%folder%时间为名称的文件
麻烦给我解析一下这段代码吧
主要是那些符号以及对应关系,谢谢!!
展开全部
dir C:\"Program Files" >> c:\a.txt
带空格目录要加""
带空格目录要加""
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
目录或者文件名带有空格时,需要加上双引号,如"program files"
"Program Files"这个目录使用频率很高,再附上一个使用方法dir c:\progra~1
progra~1这个是该目录的短文件名,所有短文件名是不长于8个字符的,一般取其前6个字符加上~1这两个
"Program Files"这个目录使用频率很高,再附上一个使用方法dir c:\progra~1
progra~1这个是该目录的短文件名,所有短文件名是不长于8个字符的,一般取其前6个字符加上~1这两个
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询