找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 27648|回复: 8

[文件操作] 【已解决】批处理命令attrib显示文件属性怎样写?

[复制链接]
发表于 2014-2-12 14:29:18 | 显示全部楼层 |阅读模式
本帖最后由 comicguests 于 2014-2-13 03:08 编辑

最近看到CrLf关于显示某文件是否为隐藏文件的代码,试着改一下能否显示其他属性,失败...
请教各位前辈,怎样改才能显示其他属性?  asrh啥的
  1. @echo off
  2. attrib a.txt|findstr "^....H"&&set "hide="||set "hide=非"
  3. echo a.txt %hide%隐藏
  4. pause
复制代码

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2014-2-12 15:46:03 | 显示全部楼层
c:\Test>attrib +r +h a.txt

c:\Test>attrib a.txt
A   HR       C:\Test\a.txt
发表于 2014-2-12 15:49:19 | 显示全部楼层
本帖最后由 ivor 于 2014-2-12 15:50 编辑
  1. @echo off
  2. attrib a.txt|findstr "^....H">nul&&echo,隐藏 || echo,非隐藏
  3. attrib a.txt|findstr "^A">nul&&echo,存档 || echo,非存档
  4. attrib a.txt|findstr "^...S">nul&&echo,系统 || echo,非系统
  5. attrib a.txt|findstr "^.....R">nul&&echo,只读 || echo,非只读
  6. attrib a.txt|findstr "^........I">nul&&echo,无索引 || echo,索引文件
  7. pause
复制代码
这样会好看一些

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2014-2-12 15:55:30 | 显示全部楼层
回复 3# ivor


    执行一次 attrib 命令就够了吧,把结果保存在变量里面。
发表于 2014-2-12 21:40:30 | 显示全部楼层
回复 4# DAIC

@echo off
echo %time%
set a = attrib a.txt
echo %a%|findstr "^....H">nul&&echo,隐藏 || echo,非隐藏
echo %a%|findstr "^A">nul&&echo,存档 || echo,非存档
echo %a%|findstr "^...S">nul&&echo,系统 || echo,非系统
echo %a%|findstr "^.....R">nul&&echo,只读 || echo,非只读
echo %a%|findstr "^........I">nul&&echo,无索引 || echo,索引文件
echo %time%
attrib a.txt|findstr "^....H">nul&&echo,隐藏 || echo,非隐藏
attrib a.txt|findstr "^A">nul&&echo,存档 || echo,非存档
attrib a.txt|findstr "^...S">nul&&echo,系统 || echo,非系统
attrib a.txt|findstr "^.....R">nul&&echo,只读 || echo,非只读
attrib a.txt|findstr "^........I">nul&&echo,无索引 || echo,索引文件
echo %time%
pause

    测试了一下还是不用变量来的快
发表于 2014-2-12 22:36:57 | 显示全部楼层
回复 5# ivor


    我的意思是把attrib命令执行的结果保存到变量里面,不是把这个命令本身保存到变量。
 楼主| 发表于 2014-2-13 10:07:05 | 显示全部楼层
感谢各位的回复,学习了!原来是点数的差别...
发表于 2014-2-15 09:05:25 | 显示全部楼层
请问一下,^....是代表空格吗?能不能详细说明一下^的用法,先谢谢了
发表于 2014-2-15 23:59:46 | 显示全部楼层
【转】一般而言,^以转义字符的身份出现。因为在 cmd环境中,有些字符具备特殊功能,如>、>>表示重定向,|表示管道,&、&&、||表示语句连接……它们都有特定的功能,如果需要把它们作为字符输出的话,echo >、echo | ……之类的写法就会出错——cmd解释器会把它们作为具有特殊功能的字符对待,而不会作为普通字符处理,这个时候,就需要对这些特殊字符做转义处理:在每个特殊字符前加上转义字符^,因此,要输出这些特殊字符,就需要用 echo ^>、echo ^|、echo ^|^|、echo ^^……之类的格式来处理。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 23:59 , Processed in 0.033119 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表