attrib 명령을 사용하여 동일한 배치 파일에서 폴더를 숨기고 숨기기를 해제하려고 합니다.

attrib 명령을 사용하여 동일한 배치 파일에서 폴더를 숨기고 숨기기를 해제하려고 합니다.

attrib 명령을 사용하여 배치 파일이 있는 폴더를 숨기려고 하고 있으며 동일한 배치 파일이 있는 파일 숨기기를 해제하고 싶습니다. 이 작업을 단일 배치 파일로 수행할 수 있나요? 아니면 다른 사람에게 전화해야 하나요? 그리고 이를 가능하게 하려면 어떤 명령을 사용해야 하나요? 감사해요

지금까지 나는

attrib +h +s Foldername

그리고

attrib -h -s Foldername

하지만 숨기기를 해제하자마자 다시 숨겨지기 때문에 작동하지 않습니다.

답변1

@echo off
Set /P Answer=Do you wish to hide File (Y/N)?
if /I {%ANSWER%}=={y} (goto :yes)
if /I {%ANSWER%}=={Y} (goto :yes)
if /I {%ANSWER%}=={n} (goto :no)
if /I {%ANSWER%}=={N} (goto :no)
:yes
attrib +h Foldername
pause
exit
:no
attrib -h Foldername
pause
exit

이 배치 파일은 Y를 선택하면 파일을 숨기고, N을 선택하면 파일 숨기기를 해제하도록 만듭니다. 원본 배치 파일.

답변2

나는 이런 식으로 시도했습니다 :-

attrib +h +s tempFolder
pause
attrib -h -s tempFolder
pause

이 배치 파일을 사용하면 폴더가 그에 따라 숨겨지고 숨김 해제되는 것을 볼 수 있습니다.

답변3

다음과 같이 작동해야 합니다.

Set _Path=C:\foldername
For /F "Delims=" %%I In ('Attrib "%_Path%"') Do Set _Attribs=%%I
If "%_Attribs:~4,1%"=="H" (
  Attrib -S -H "%_Path%"
  Attrib /D /S -S -H "%_Path%"\*.*
) Else (
  Attrib +S +H "%_Path%"
  Attrib /D /S +S +H "%_Path%"\*.*
)

techguys.org에서 가져왔습니다.

답변4

cls
/@echo off
/title Folder Locker
/IF EXIST "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B303­­09D}" GOTO UNLOCK
/IF NOT EXIST Locker GOTO MDLOCKER
/echo Folder Created.
/:CONFIRM
/echo Are you sure you want to lock the folder? (Y/N)
/set/p "cho="
/IF %cho%==Y GOTO LOCK
/IF %cho%==y GOTO LOCK
/IF %cho%==N GOTO END
/IF %cho%==n GOTO END
/echo Invalid Choice.
/GOTO CONFIRM
/:LOCK
/ren Locker "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B303­­09D}"
/attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B303­­09D}"
/echo Folder Locked.
/GOTO END

/:UNLOCK
/echo Enter password to unlock the Folder :
/set/p "pass="
/IF NOT %pass% == YourPassword GOTO FAIL
/attrib -h -s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B303­­09D}"
/ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B303­­09D}" LOCK
/echo Folder Unlocked Successfully.
/GOTO END
/:FAIL
/echo Invalid Password!
/GOTO END

/:MDLOCKER
/md Locker
/echo Folder created.

/GOTO END
/:END
/PAUSE

!!!!!중요한!!!!
%pass%가 아닌 경우 == 귀하의 비밀번호가 실패했습니다. 비밀번호를 원하는 비밀번호로 변경하세요. "/"를 넣은 곳은 Enter 키를 누른다는 의미입니다.

관련 정보