中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-08 06:29
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 这个代码怎样对隐藏文件也有效 查看 2,367 回复 33
31 发表于 2008-01-10 23:03 ·  中国 江西 南昌 电信
中级用户
★★
积分 245
发帖 123
注册 2007-06-08 09:04
19年会员
UID 90636
性别 女
状态 离线
有意思 哈哈
32 发表于 2008-01-11 12:02 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
@echo off
for /f "delims=" %%a in ('dir/s/b/a *.txt') do call :a "%%a"
goto :EOF
:a
set b=%~a1
set c=
if %b:~1,1%==r set c= +r
if %b:~3,1%==h set c=%c% +h
if %b:~4,1%==s set c=%c% +s
if not "%c%"=="" (attrib -s -h -r %1
cd.>%1
attrib%c% %1) ELSE cd.>%1
这个应该是你最需要的吧,不生成临时文件
33 发表于 2008-01-11 12:28 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
@echo off
for /f "delims=" %%a in ('dir/s/b/a *.txt') do cd.>"%%a"||call :a "%%a"
goto :EOF
:a
set b=%~a1
set c=
if %b:~1,1%==r set c= +r
if %b:~3,1%==h set c=%c% +h
if %b:~4,1%==s set c=%c% +s
attrib -s -h -r %1
cd.>%1
attrib%c% %1
这个有错误提示,但是运行正常
34 发表于 2008-01-11 14:22 ·  中国 江苏 扬州 电信
高级用户
★★★
积分 620
发帖 329
注册 2007-12-05 15:34
18年会员
UID 104754
性别 男
状态 离线
Originally posted by 不得不爱 at 2008-1-11 12:28 PM:
@echo off
for /f "delims=" %%a in ('dir/s/b/a *.txt') do cd.>"%%a"||call :a "%%a"
goto :EOF
:a
set b=%~a1
set c=
if %b:~1,1%==r set c= +r
if %b:~3,1%==h set ...





有这样一位高手,出手,,,再感谢了.........
论坛跳转: