
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-08002B30309D}" 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-08002B30309D}"
/attrib +h +s "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}"
/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-08002B30309D}"
/ren "Control Panel.{21EC2020-3AEA-1069-A2DD-08002B30309D}" 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 키를 누른다는 의미입니다.