
Windows でコマンド ラインを使用して、ディレクトリの下にあるすべてのファイルの読み取り専用属性を再帰的に削除する必要があります。これに関する例を教えていただけますか?
答え1
たとえば、ATTRIB コマンドを使用します。
attrib -r c:\folder\*.* /s
attrib
コマンド
-r
は読み取り専用属性を削除するためのフラグです。
c:\folder\*.*
実行しているフォルダと、すべてのファイルのワイルドカードです。
/s
すべてのサブディレクトリとファイルを実行するためのフラグです。
以下は、attrib コマンドの詳細なドキュメントと例です。 https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/attrib
答え2
まず、コマンドプロンプトを開きます。次にcd
属性の変更を適用するディレクトリに移動します。最後に、次のコマンドを入力します。
attrib -R /S
これにより、現在のディレクトリ内のすべてのファイルから読み取り専用属性が削除され、その後、すべてのサブディレクトリで同じ処理が再帰的に実行されます。
- テクネット -
attrib
答え3
注記:他の回答のほとんどは-r
which mightのみを使用していますうまくいかないsystem
または属性が設定されているファイルhidden
。
そこで、読み取り専用属性を再帰的に削除する解決策を紹介します。全てディレクトリ内のファイル(システムファイルや隠しファイルを含む):
attrib -s -h -r "c:\path_to_folder\*.*" /s /d
説明:
-s
システム属性を削除
-h
隠し属性を削除
-r
読み取り専用属性を削除
/s
現在のフォルダとサブフォルダ内の属性を設定/削除
/d
フォルダの属性も設定/削除
答え4
ここには多くのオプションがありますが、このバッチ ファイルはフォルダーやファイルをバッチ ファイル自体にドロップすることをサポートしています。
以下のコードを に保存します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