답변:
예를 들어 ATTRIB 명령을 사용합니다.
attrib -r c:\folder\*.* /s
attrib
명령
-r
은 읽기 전용 속성을 제거하기위한 플래그입니다.
c:\folder\*.*
실행중인 폴더이고 모든 파일에 대한 와일드 카드
/s
는 모든 하위 디렉토리 및 파일을 수행하기위한 플래그입니다.
다음은 attrib 명령에 대한 추가 문서 및 예제입니다. https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/attrib
/d
실제 폴더도 처리하려면를 추가하십시오 .
attrib -h -r
:).
참고 : 대부분의 다른 답변은 속성이 설정 되어 있거나 파일 -r
이 아닌 파일 에서만 작동 합니다 .system
hidden
다음은 디렉토리 내의 모든 파일 (시스템 또는 숨김 파일 포함) 에서 읽기 전용 속성을 재귀 적으로 제거하는 솔루션입니다 .
attrib -s -h -r "c:\path_to_folder\*.*" /s /d
설명 :
-s
시스템 속성
-h
제거 숨겨진 속성
-r
제거 읽기 전용 속성
/s
제거 현재 폴더 및 하위 폴더를 포함하여
/d
속성 설정 / 제거 폴더의 속성 설정 / 제거
이를 위해이 배치 파일을 만들었습니다. 기본적으로이 배치 파일은 디렉토리의 디렉토리 또는 디렉토리의 모든 하위 디렉토리에서 읽기 전용 속성을 지 웁니다. 누군가가 그것을 사용하기를 바랍니다. 배치 파일을 스스로 배우기 시작하면서 "불량한"것처럼 보일 수있는 코드를 실례합니다.
@ECHO off
:begin
ECHO Would you like to only remove read only attributes
ECHO from this director or from all the sub directores as
ECHO well?
ECHO.
ECHO [A] This directory only
ECHO [B] All directories - cascading
ECHO [C] Cancel
SET /P actionChoice="Option(A,B,C): "
ECHO.
IF "%actionChoice%" == "A" GOTO A
IF "%actionChoice%" == "B" GOTO B
IF "%actionChoice%" == "C" GOTO C
GOTO badChoice
:A
CLS
ECHO Are you sure you want to remove all read-only
ECHO attributes from this directory only?
ECHO.
ECHO Directory:
ECHO.
ECHO %CD%
ECHO.
SET /P continueChoice="Continue? (Y, N): "
IF "%continueChoice%" == "N" GOTO abort
ECHO Removing Read Only Attributes From Local Directory...
SET currectDirectory=%CD%
ECHO Current directory is: %currectDirectory%
FOR %%G IN (%currectDirectory%\*) DO (
ECHO %%G
ATTRIB -R "%%G"
)
GOTO end
:B
CLS
ECHO Are you sure you want to remove all read-only
ECHO attributes from this directory and all sub-directories?
ECHO.
ECHO Directory:
ECHO.
ECHO %CD%
ECHO.
SET /P continueChoice="Continue? (Y, N): "
IF "%continueChoice%" == "N" GOTO abort
ECHO Removing Read Only Attributes Cascading...
FOR /R %%f IN (*) DO (
ECHO %%f
ATTRIB -R "%%f"
)
GOTO end
:C
CLS
ECHO Cancel: no files have been changed
GOTO end
:badChoice
CLS
ECHO Unknown Option
ECHO.
ECHO.
ECHO.
GOTO begin
:abort
CLS
ECHO No files have been changed
ECHO.
ECHO.
ECHO.
GOTO begin
:end
ECHO Read only attributes removed
PAUSE
여기에 많은 옵션이 있지만이 배치 파일은 배치 파일 자체에 폴더 및 / 또는 파일을 삭제하는 것을 지원합니다.
이 코드를 아래에 저장하십시오 Read-only Off.bat
.
드롭 비트가 코드 내에서 어떻게 작동하는지 참고하십시오.
@echo off
title ' %~nx0 ' by stephen147
color 5F
rem Place this inside a folder and run to remove the read-only attribute in the root folder and any folders or files within.
rem Or drop the folder/s and/or file/s to the batch file itself.
cd /d "%~dp0"
echo.
echo.Do you want to remove the read-only attributes inside this folder ? [ Ctrl + C to cancel ]
echo.
pause
echo.
echo.%cd%
attrib -s -d -r "%cd%\*.*"
attrib -s -d -r "%cd%"
rem This line supports dropping the folder/s and/or file/s to the batch file itself.
attrib -r "%*"
echo.
echo.Done
timeout /T 5
EXIT
attrib /S -R