none
批处理如何判断文件是否是隐藏文件 RRS feed

  • 问题

  • 批处理如何判断一个文件是不是隐藏文件呢? 上网搜了很多资料也没找到方法。

    前无古人,后无来者

    2018年9月10日 10:29

全部回复

  • 您好,

    感谢您在我们论坛发帖。

    我们可以尝试以下命令去判断:

    1)DIR / AH

    使用DIR命令查找具有特定属性的文件。如果找到则返回成功,否则返回错误。

    dir /ah file.ext >nul 2>nul && (

      echo file.ext is hidden

    ) || (

      echo file.ext is NOT hidden

    )

    2ATTRIB命令

    属性代码是大写的。隐藏的代码是H,它始终处于第五位。使用FINDSTR查找代码。

    attrib file.ext | findstr "^....H" >nul && (

      echo file.ext is hidden

    ) || (

      echo file.ext is NOT hidden

    )

    3FOR变量~a修饰符

    属性代码是小写的,它们的顺序与ATTRIB命令的顺序不同。隐藏的代码h位于第四位。使用FINDSTR查找代码

    for %%F in (file.ext) do echo %%~aF | findstr "^...h" >nul 2>nul &&

      echo file.ext is hidden

    ) || (

      echo file.ext is NOT hidden

    )

    或使用子字符串操作。不要忘记子字符串是0索引的。

    for %%F in (file.ext) do set "attr=%%~aF"

    if %attr:~3,1% equ h (

      echo file.ext is hidden

    ) else (

      echo file.ext is NOT hidden

    )

    以下链接供您参考:

    https://social.microsoft.com/Forums/zh-CN/8ab61a87-aebe-4dc2-947c-0164b7ee2ae0/25209227882970222914203092102826029259912021426159215422615938?forum=windowsserversystemzhchs

    请注意:由于网站不是由微软主办,链接可能会改变,恕不另行通知。微软不保证这个信息的准确性。

    Best regards

    Julie



    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2018年9月11日 3:09
    版主
  • 您好,

    请问一下您的问题是否已经解决了呢? 如果还没有,请您随时让我知道,如果已经解决了,并且我的回复对您有所帮助请麻烦您标记我的回复为答案,这样有利于其他遇到同样问题的人快速找到答案,或者您的问题是您自行解决的,您也可以分享您的解决方案到我们论坛。

    感谢您的支持与理解。

    Best regards

    Julie 


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2018年9月14日 8:48
    版主
  • 您好,

    请问您的问题是否已经解决,如果需要其他的帮助,请您随时让我知道。

    Best regards

    Julie 


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2018年9月17日 2:55
    版主